Browse Source
Now that we have several different types of @{} syntax, it is a good idea to test them together, which reveals some failures. Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>maint


1 changed files with 51 additions and 0 deletions
@ -0,0 +1,51 @@
@@ -0,0 +1,51 @@
|
||||
#!/bin/sh |
||||
|
||||
test_description='test various @{X} syntax combinations together' |
||||
. ./test-lib.sh |
||||
|
||||
check() { |
||||
test_expect_${3:-success} "$1 = $2" " |
||||
echo '$2' >expect && |
||||
git log -1 --format=%s '$1' >actual && |
||||
test_cmp expect actual |
||||
" |
||||
} |
||||
nonsense() { |
||||
test_expect_${2:-success} "$1 is nonsensical" " |
||||
test_must_fail git log -1 '$1' |
||||
" |
||||
} |
||||
fail() { |
||||
"$@" failure |
||||
} |
||||
|
||||
test_expect_success 'setup' ' |
||||
test_commit master-one && |
||||
test_commit master-two && |
||||
git checkout -b upstream-branch && |
||||
test_commit upstream-one && |
||||
test_commit upstream-two && |
||||
git checkout -b old-branch && |
||||
test_commit old-one && |
||||
test_commit old-two && |
||||
git checkout -b new-branch && |
||||
test_commit new-one && |
||||
test_commit new-two && |
||||
git config branch.old-branch.remote . && |
||||
git config branch.old-branch.merge refs/heads/master && |
||||
git config branch.new-branch.remote . && |
||||
git config branch.new-branch.merge refs/heads/upstream-branch |
||||
' |
||||
|
||||
check HEAD new-two |
||||
check "@{1}" new-one |
||||
check "@{-1}" old-two |
||||
check "@{-1}@{1}" old-one |
||||
check "@{u}" upstream-two |
||||
check "@{u}@{1}" upstream-one |
||||
fail check "@{-1}@{u}" master-two |
||||
fail check "@{-1}@{u}@{1}" master-one |
||||
fail nonsense "@{u}@{-1}" |
||||
nonsense "@{1}@{u}" |
||||
|
||||
test_done |
Loading…
Reference in new issue