We were lacking a test that covered the multi-parent case for commits.
Add a basic test to ensure we do not regress this behavior in the
future.

Signed-off-by: brian m. carlson <sand...@crustytoothpaste.net>
---
 t/t4013-diff-various.sh | 19 +++++++++++++++++++
 1 file changed, 19 insertions(+)

It's a little bit ugly to me that this test hard-codes so many values,
and I'm concerned that it may be unnecessarily brittle.  However, I
don't have a good idea of how to perform the kind of comprehensive test
we need otherwise.

diff --git a/t/t4013-diff-various.sh b/t/t4013-diff-various.sh
index d09acfe48e..e6c2a7a369 100755
--- a/t/t4013-diff-various.sh
+++ b/t/t4013-diff-various.sh
@@ -349,4 +349,23 @@ test_expect_success 'diff-tree --stdin with log 
formatting' '
        test_cmp expect actual
 '
 
+test_expect_success 'diff-tree --stdin with two parent commits' '
+       cat >expect <<-\EOF &&
+       c7a2ab9e8eac7b117442a607d5a9b3950ae34d5a
+       :040000 040000 da7a33fa77d8066d6698643940ce5860fe2d7fb3 
f977ed46ae6873c1c30ab878e15a4accedc3618b M      dir
+       :100644 100644 01e79c32a8c99c557f0757da7cb6d65b3414466d 
f4615da674c09df322d6ba8d6b21ecfb1b1ba510 M      file0
+       :000000 100644 0000000000000000000000000000000000000000 
7289e35bff32727c08dda207511bec138fdb9ea5 A      file3
+       9a6d4949b6b76956d9d5e26f2791ec2ceff5fdc0
+       :040000 040000 847b63d013de168b2de618c5ff9720d5ab27e775 
65f5c9dd60ce3b2b3324b618ac7accf8d912c113 M      dir
+       :000000 100644 0000000000000000000000000000000000000000 
b1e67221afe8461efd244b487afca22d46b95eb8 A      file1
+       1bde4ae5f36c8d9abe3a0fce0c6aab3c4a12fe44
+       :040000 040000 da7a33fa77d8066d6698643940ce5860fe2d7fb3 
847b63d013de168b2de618c5ff9720d5ab27e775 M      dir
+       :100644 100644 01e79c32a8c99c557f0757da7cb6d65b3414466d 
b414108e81e5091fe0974a1858b4d0d22b107f70 M      file0
+       :100644 000000 01e79c32a8c99c557f0757da7cb6d65b3414466d 
0000000000000000000000000000000000000000 D      file2
+       EOF
+       git rev-list --parents master | git diff-tree --stdin >actual &&
+       test_cmp expect actual
+'
+
+
 test_done

Reply via email to