git-commit-vandalism/t/t1418-reflog-exists.sh
Ævar Arnfjörð Bjarmason a34393f5f8 reflog exists: use parse_options() API
Change the "reflog exists" command added in afcb2e7a3b (git-reflog:
add exists command, 2015-07-21) to use parse_options() instead of its
own custom command-line parser. This continues work started in
33d7bdd645 (builtin/reflog.c: use parse-options api for expire,
delete subcommands, 2022-01-06).

As a result we'll understand the --end-of-options synonym for "--", so
let's test for that.

Signed-off-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2022-03-17 18:03:12 -07:00

38 lines
970 B
Bash
Executable File

#!/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_expect_success 'reflog exists works with a "--end-of-options" delimiter' '
git reflog exists --end-of-options refs/heads/main &&
test_must_fail git reflog exists --end-of-options refs/heads/nonexistent
'
test_done