You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
64 lines
1.3 KiB
64 lines
1.3 KiB
#!/bin/sh |
|
|
|
test_description='magic pathspec tests using git-log' |
|
|
|
. ./test-lib.sh |
|
|
|
test_expect_success 'setup' ' |
|
test_commit initial && |
|
test_tick && |
|
git commit --allow-empty -m empty && |
|
mkdir sub |
|
' |
|
|
|
test_expect_success '"git log :/" should not be ambiguous' ' |
|
git log :/ |
|
' |
|
|
|
test_expect_success '"git log :/a" should be ambiguous (applied both rev and worktree)' ' |
|
: >a && |
|
test_must_fail git log :/a 2>error && |
|
grep ambiguous error |
|
' |
|
|
|
test_expect_success '"git log :/a -- " should not be ambiguous' ' |
|
git log :/a -- |
|
' |
|
|
|
test_expect_success '"git log -- :/a" should not be ambiguous' ' |
|
git log -- :/a |
|
' |
|
|
|
test_expect_success '"git log :" should be ambiguous' ' |
|
test_must_fail git log : 2>error && |
|
grep ambiguous error |
|
' |
|
|
|
test_expect_success 'git log -- :' ' |
|
git log -- : |
|
' |
|
|
|
test_expect_success 'git log HEAD -- :/' ' |
|
cat >expected <<-EOF && |
|
24b24cf initial |
|
EOF |
|
(cd sub && git log --oneline HEAD -- :/ >../actual) && |
|
test_cmp expected actual |
|
' |
|
|
|
test_expect_success 'command line pathspec parsing for "git log"' ' |
|
git reset --hard && |
|
>a && |
|
git add a && |
|
git commit -m "add an empty a" --allow-empty && |
|
echo 1 >a && |
|
git commit -a -m "update a to 1" && |
|
git checkout HEAD^ && |
|
echo 2 >a && |
|
git commit -a -m "update a to 2" && |
|
test_must_fail git merge master && |
|
git add a && |
|
git log --merge -- a |
|
' |
|
|
|
test_done
|
|
|