"brian m. carlson" <sandals@xxxxxxxxxxxxxxxxxxxx> writes: > 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 <sandals@xxxxxxxxxxxxxxxxxxxx> > --- > 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. Hmph, perhaps the expectation can be created out of the output from 'git diff-tree master^ master' or something? > > 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