tests: teach verify_parents to check for extra parents
authorJonathan Nieder <jrnieder@gmail.com>
Fri, 6 May 2011 21:00:21 +0000 (16:00 -0500)
committerJunio C Hamano <gitster@pobox.com>
Fri, 6 May 2011 22:29:01 +0000 (15:29 -0700)
Currently verify_parents only makes sure that the earlier parents of
HEAD match the commits given, and does not care if there are more
parents.  This makes it harder than one would like to check that, for
example, parent reduction works correctly when making an octopus.

Fix it by checking that HEAD^(n+1) is not a valid commit name.
Noticed while working on a new test that was supposed to create a
fast-forward one commit ahead but actually created a merge.

Reported-by: Junio C Hamano <gitster@pobox.com>
Signed-off-by: Jonathan Nieder <jrnieder@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
t/t7600-merge.sh

index c665acdd0a128667a93c57a7942c5bd7a44b2d8b..17292b7ad70ac64c166d2d42d3501c7c11f65dc1 100755 (executable)
@@ -89,6 +89,7 @@ verify_parents () {
                i=$(expr $i + 1) ||
                return 1
        done &&
+       test_must_fail git rev-parse --verify "HEAD^$i" &&
        test_cmp parents.expected parents.actual
 }