reflog tests: add missing "git reflog exists" tests

There were a few "git reflog exists" tests scattered over the test
suite, but let's consolidate the testing of the main functionality
into a new test file. This makes it easier to run just these tests
during development.

To do that amend and extend an existing test added in
afcb2e7a3b (git-reflog: add exists command, 2015-07-21). Let's use
"test_must_fail" instead of "!" (in case it segfaults), and test for
basic usage, an unknown option etc.

Signed-off-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
Ævar Arnfjörð Bjarmason 2022-03-17 19:08:35 +01:00 committed by Junio C Hamano
parent 5f9b64a6c2
commit d3ab1a5fcf
2 changed files with 32 additions and 5 deletions

View file

@ -169,9 +169,4 @@ test_expect_success 'git log -g -p shows diffs vs. parents' '
test_cmp expect actual
'
test_expect_success 'reflog exists works' '
git reflog exists refs/heads/main &&
! git reflog exists refs/heads/nonexistent
'
test_done

32
t/t1418-reflog-exists.sh Executable file
View file

@ -0,0 +1,32 @@
#!/bin/sh
test_description='Test reflog display routines'
GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main
export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME
. ./test-lib.sh
test_expect_success 'setup' '
test_commit A
'
test_expect_success 'usage' '
test_expect_code 129 git reflog exists &&
test_expect_code 129 git reflog exists -h
'
test_expect_success 'usage: unknown option' '
test_expect_code 129 git reflog exists --unknown-option
'
test_expect_success 'reflog exists works' '
git reflog exists refs/heads/main &&
test_must_fail git reflog exists refs/heads/nonexistent
'
test_expect_success 'reflog exists works with a "--" delimiter' '
git reflog exists -- refs/heads/main &&
test_must_fail git reflog exists -- refs/heads/nonexistent
'
test_done