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.
97 lines
1.7 KiB
97 lines
1.7 KiB
#!/bin/sh |
|
|
|
test_description='git log' |
|
|
|
. ./test-lib.sh |
|
|
|
test_expect_success setup ' |
|
|
|
echo one >one && |
|
git add one && |
|
test_tick && |
|
git commit -m initial && |
|
|
|
echo ichi >one && |
|
git add one && |
|
test_tick && |
|
git commit -m second && |
|
|
|
mkdir a && |
|
echo ni >a/two && |
|
git add a/two && |
|
test_tick && |
|
git commit -m third && |
|
|
|
echo san >a/three && |
|
git add a/three && |
|
test_tick && |
|
git commit -m fourth && |
|
|
|
git rm a/three && |
|
test_tick && |
|
git commit -m fifth |
|
|
|
' |
|
|
|
test_expect_success 'diff-filter=A' ' |
|
|
|
actual=$(git log --pretty="format:%s" --diff-filter=A HEAD) && |
|
expect=$(echo fourth ; echo third ; echo initial) && |
|
test "$actual" = "$expect" || { |
|
echo Oops |
|
echo "Actual: $actual" |
|
false |
|
} |
|
|
|
' |
|
|
|
test_expect_success 'diff-filter=M' ' |
|
|
|
actual=$(git log --pretty="format:%s" --diff-filter=M HEAD) && |
|
expect=$(echo second) && |
|
test "$actual" = "$expect" || { |
|
echo Oops |
|
echo "Actual: $actual" |
|
false |
|
} |
|
|
|
' |
|
|
|
test_expect_success 'diff-filter=D' ' |
|
|
|
actual=$(git log --pretty="format:%s" --diff-filter=D HEAD) && |
|
expect=$(echo fifth) && |
|
test "$actual" = "$expect" || { |
|
echo Oops |
|
echo "Actual: $actual" |
|
false |
|
} |
|
|
|
' |
|
|
|
test_expect_success 'setup case sensitivity tests' ' |
|
echo case >one && |
|
test_tick && |
|
git commit -a -m Second |
|
' |
|
|
|
test_expect_success 'log --grep' ' |
|
echo second >expect && |
|
git log -1 --pretty="tformat:%s" --grep=sec >actual && |
|
test_cmp expect actual |
|
' |
|
|
|
test_expect_success 'log -i --grep' ' |
|
echo Second >expect && |
|
git log -1 --pretty="tformat:%s" -i --grep=sec >actual && |
|
test_cmp expect actual |
|
' |
|
|
|
test_expect_success 'log --grep -i' ' |
|
echo Second >expect && |
|
git log -1 --pretty="tformat:%s" --grep=sec -i >actual && |
|
test_cmp expect actual |
|
' |
|
|
|
test_done |
|
|
|
|