diff options
Diffstat (limited to 't')
-rw-r--r-- | t/t1200-tutorial.sh | 4 | ||||
-rwxr-xr-x | t/t6010-merge-base.sh | 59 |
2 files changed, 61 insertions, 2 deletions
diff --git a/t/t1200-tutorial.sh b/t/t1200-tutorial.sh index 35db799ed..d7562e974 100644 --- a/t/t1200-tutorial.sh +++ b/t/t1200-tutorial.sh @@ -122,7 +122,7 @@ cat > show-branch.expect << EOF ++ [mybranch] Some work. EOF -git show-branch master mybranch > show-branch.output +git show-branch --topo-order master mybranch > show-branch.output test_expect_success 'git show-branch' 'cmp show-branch.expect show-branch.output' git checkout mybranch @@ -145,7 +145,7 @@ cat > show-branch2.expect << EOF ++ [master] Merged "mybranch" changes. EOF -git show-branch master mybranch > show-branch2.output +git show-branch --topo-order master mybranch > show-branch2.output test_expect_success 'git show-branch' 'cmp show-branch2.expect show-branch2.output' # TODO: test git fetch diff --git a/t/t6010-merge-base.sh b/t/t6010-merge-base.sh new file mode 100755 index 000000000..c3a9680e2 --- /dev/null +++ b/t/t6010-merge-base.sh @@ -0,0 +1,59 @@ +#!/bin/sh +# +# Copyright (c) 2005 Junio C Hamano +# + +test_description='Merge base computation. +' + +. ./test-lib.sh + +T=$(git-write-tree) + +M=1130000000 +Z=+0000 + +export GIT_COMMITTER_EMAIL=git@comm.iter.xz +export GIT_COMMITTER_NAME='C O Mmiter' +export GIT_AUTHOR_NAME='A U Thor' +export GIT_AUTHOR_EMAIL=git@au.thor.xz + +doit() { + OFFSET=$1; shift + NAME=$1; shift + PARENTS= + for P + do + PARENTS="${PARENTS}-p $P " + done + GIT_COMMITTER_DATE="$(($M + $OFFSET)) $Z" + GIT_AUTHOR_DATE=$GIT_COMMITTER_DATE + export GIT_COMMITTER_DATE GIT_AUTHOR_DATE + commit=$(echo $NAME | git-commit-tree $T $PARENTS) + echo $commit >.git/refs/tags/$NAME + echo $commit +} + +# Setup... +E=$(doit 5 E) +D=$(doit 4 D $E) +F=$(doit 6 F $E) +C=$(doit 3 C $D) +B=$(doit 2 B $C) +A=$(doit 1 A $B) +G=$(doit 7 G $B $E) +H=$(doit 8 H $A $F) + +test_expect_success 'compute merge-base (single)' \ + 'MB=$(git-merge-base G H) && + expr "$(git-name-rev "$MB")" : "[0-9a-f]* B"' + +test_expect_success 'compute merge-base (all)' \ + 'MB=$(git-merge-base --all G H) && + expr "$(git-name-rev "$MB")" : "[0-9a-f]* B"' + +test_expect_success 'compute merge-base with show-branch' \ + 'MB=$(git-show-branch --merge-base G H) && + expr "$(git-name-rev "$MB")" : "[0-9a-f]* B"' + +test_done |