Merge branch 'jn/maint-test-merge-verify-parents'

* jn/maint-test-merge-verify-parents:
  tests: teach verify_parents to check for extra parents
  tests: eliminate unnecessary setup test assertions
This commit is contained in:
Junio C Hamano 2011-05-11 11:38:10 -07:00
commit bd9a268845
2 changed files with 98 additions and 99 deletions

View File

@ -8,19 +8,16 @@ test_description='Merge base and parent list computation.
. ./test-lib.sh . ./test-lib.sh
test_expect_success 'setup' ' M=1130000000
T=$(git write-tree) && Z=+0000
M=1130000000 && GIT_COMMITTER_EMAIL=git@comm.iter.xz
Z=+0000 && GIT_COMMITTER_NAME='C O Mmiter'
GIT_AUTHOR_NAME='A U Thor'
GIT_AUTHOR_EMAIL=git@au.thor.xz
export GIT_COMMITTER_EMAIL GIT_COMMITTER_NAME GIT_AUTHOR_NAME GIT_AUTHOR_EMAIL
GIT_COMMITTER_EMAIL=git@comm.iter.xz && doit () {
GIT_COMMITTER_NAME="C O Mmiter" &&
GIT_AUTHOR_NAME="A U Thor" &&
GIT_AUTHOR_EMAIL=git@au.thor.xz &&
export GIT_COMMITTER_EMAIL GIT_COMMITTER_NAME GIT_AUTHOR_NAME GIT_AUTHOR_EMAIL &&
doit() {
OFFSET=$1 && OFFSET=$1 &&
NAME=$2 && NAME=$2 &&
shift 2 && shift 2 &&
@ -39,7 +36,10 @@ test_expect_success 'setup' '
echo $commit >.git/refs/tags/$NAME && echo $commit >.git/refs/tags/$NAME &&
echo $commit echo $commit
} }
test_expect_success 'setup' '
T=$(git mktree </dev/null)
' '
test_expect_success 'set up G and H' ' test_expect_success 'set up G and H' '

View File

@ -28,18 +28,17 @@ Testing basic merge operations/option parsing.
. ./test-lib.sh . ./test-lib.sh
test_expect_success 'set up test data and helpers' ' printf '%s\n' 1 2 3 4 5 6 7 8 9 >file
printf "%s\n" 1 2 3 4 5 6 7 8 9 >file && printf '%s\n' '1 X' 2 3 4 5 6 7 8 9 >file.1
printf "%s\n" "1 X" 2 3 4 5 6 7 8 9 >file.1 && printf '%s\n' 1 2 3 4 '5 X' 6 7 8 9 >file.5
printf "%s\n" 1 2 3 4 "5 X" 6 7 8 9 >file.5 && printf '%s\n' 1 2 3 4 5 6 7 8 '9 X' >file.9
printf "%s\n" 1 2 3 4 5 6 7 8 "9 X" >file.9 && printf '%s\n' '1 X' 2 3 4 5 6 7 8 9 >result.1
printf "%s\n" "1 X" 2 3 4 5 6 7 8 9 >result.1 && printf '%s\n' '1 X' 2 3 4 '5 X' 6 7 8 9 >result.1-5
printf "%s\n" "1 X" 2 3 4 "5 X" 6 7 8 9 >result.1-5 && printf '%s\n' '1 X' 2 3 4 '5 X' 6 7 8 '9 X' >result.1-5-9
printf "%s\n" "1 X" 2 3 4 "5 X" 6 7 8 "9 X" >result.1-5-9 &&
create_merge_msgs() { create_merge_msgs () {
echo "Merge commit '\''c2'\''" >msg.1-5 && echo "Merge commit 'c2'" >msg.1-5 &&
echo "Merge commit '\''c2'\''; commit '\''c3'\''" >msg.1-5-9 && echo "Merge commit 'c2'; commit 'c3'" >msg.1-5-9 &&
{ {
echo "Squashed commit of the following:" && echo "Squashed commit of the following:" &&
echo && echo &&
@ -57,13 +56,13 @@ test_expect_success 'set up test data and helpers' '
} >squash.1-5-9 && } >squash.1-5-9 &&
echo >msg.nolog && echo >msg.nolog &&
{ {
echo "* commit '\''c3'\'':" && echo "* commit 'c3':" &&
echo " commit 3" && echo " commit 3" &&
echo echo
} >msg.log } >msg.log
} && }
verify_merge() { verify_merge () {
test_cmp "$2" "$1" && test_cmp "$2" "$1" &&
git update-index --refresh && git update-index --refresh &&
git diff --exit-code && git diff --exit-code &&
@ -72,16 +71,16 @@ test_expect_success 'set up test data and helpers' '
git show -s --pretty=format:%s HEAD >msg.act && git show -s --pretty=format:%s HEAD >msg.act &&
test_cmp "$3" msg.act test_cmp "$3" msg.act
fi fi
} && }
verify_head() { verify_head () {
echo "$1" >head.expected && echo "$1" >head.expected &&
git rev-parse HEAD >head.actual && git rev-parse HEAD >head.actual &&
test_cmp head.expected head.actual test_cmp head.expected head.actual
} && }
verify_parents() { verify_parents () {
printf "%s\n" "$@" >parents.expected && printf '%s\n' "$@" >parents.expected &&
>parents.actual && >parents.actual &&
i=1 && i=1 &&
while test $i -le $# while test $i -le $#
@ -90,18 +89,18 @@ test_expect_success 'set up test data and helpers' '
i=$(expr $i + 1) || i=$(expr $i + 1) ||
return 1 return 1
done && done &&
test_must_fail git rev-parse --verify "HEAD^$i" &&
test_cmp parents.expected parents.actual test_cmp parents.expected parents.actual
} && }
verify_mergeheads() { verify_mergeheads () {
printf "%s\n" "$@" >mergehead.expected && printf '%s\n' "$@" >mergehead.expected &&
test_cmp mergehead.expected .git/MERGE_HEAD test_cmp mergehead.expected .git/MERGE_HEAD
} && }
verify_no_mergehead() { verify_no_mergehead () {
! test -e .git/MERGE_HEAD ! test -e .git/MERGE_HEAD
} }
'
test_expect_success 'setup' ' test_expect_success 'setup' '
git add file && git add file &&