Brandon Casey <casey@xxxxxxxxxxxxxxx> writes: > No time to investigate, but here is an example patch and the > results of running the affected tests. Looks like reflog may > be creating a reflog when it is not supposed to. Your later analysis is correct; "git reflog show <branch>" does not complain when there is no reflog for <branch>, which might or might not be a bug. Because these tests are not about behaviour of "git reflog show" command, let's do this for now. Thanks. -- >8 -- Subject: tests: correct "does reflog exist" tests These two tests were not about how "git reflog show <branch>" exits when there is no reflog, but were about whether "checkout" and "branch" create or not create reflog when creating a new <branch>, update the tests to check it in a more direct way, namely using "git rev-parse --verify". Also lose tests based on "test -f .git/logs/refs/heads/<branch>" from nearby, to avoid exposing this particular implementation detail unnecessarily. --- t/t2017-checkout-orphan.sh | 47 +++++++------------------------------------ t/t3200-branch.sh | 13 ++--------- 2 files changed, 11 insertions(+), 49 deletions(-) diff --git a/t/t2017-checkout-orphan.sh b/t/t2017-checkout-orphan.sh index 81cb393..2d2f63f 100755 --- a/t/t2017-checkout-orphan.sh +++ b/t/t2017-checkout-orphan.sh @@ -68,65 +68,34 @@ test_expect_success '--orphan makes reflog by default' ' git checkout master && git config --unset core.logAllRefUpdates && git checkout --orphan delta && - ! test -f .git/logs/refs/heads/delta && - ( - PAGER= && - export PAGER && - test_must_fail git reflog show delta - ) && + test_must_fail git rev-parse --verify delta@{0} && git commit -m Delta && - test -f .git/logs/refs/heads/delta && - PAGER= git reflog show delta + git rev-parse --verify delta@{0} ' test_expect_success '--orphan does not make reflog when core.logAllRefUpdates = false' ' git checkout master && git config core.logAllRefUpdates false && git checkout --orphan epsilon && - ! test -f .git/logs/refs/heads/epsilon && - ( - PAGER= && - export PAGER && - test_must_fail git reflog show epsilon - ) && + test_must_fail git rev-parse --verify epsilon@{0} && git commit -m Epsilon && - ! test -f .git/logs/refs/heads/epsilon && - ( - PAGER= && - export PAGER && - test_must_fail git reflog show epsilon - ) + test_must_fail git rev-parse --verify epsilon@{0} ' test_expect_success '--orphan with -l makes reflog when core.logAllRefUpdates = false' ' git checkout master && git checkout -l --orphan zeta && - test -f .git/logs/refs/heads/zeta && - ( - PAGER= && - export PAGER && - test_must_fail git reflog show zeta - ) && + test_must_fail git rev-parse --verify zeta@{0} && git commit -m Zeta && - PAGER= git reflog show zeta + git rev-parse --verify zeta@{0} ' test_expect_success 'giving up --orphan not committed when -l and core.logAllRefUpdates = false deletes reflog' ' git checkout master && git checkout -l --orphan eta && - test -f .git/logs/refs/heads/eta && - ( - PAGER= && - export PAGER && - test_must_fail git reflog show eta - ) && + test_must_fail git rev-parse --verify eta@{0} && git checkout master && - ! test -f .git/logs/refs/heads/eta && - ( - PAGER= && - export PAGER && - test_must_fail git reflog show eta - ) + test_must_fail git rev-parse --verify eta@{0} ' test_expect_success '--orphan is rejected with an existing name' ' diff --git a/t/t3200-branch.sh b/t/t3200-branch.sh index bf7747d..f54a533 100755 --- a/t/t3200-branch.sh +++ b/t/t3200-branch.sh @@ -228,28 +228,21 @@ test_expect_success 'checkout -b makes reflog by default' ' git checkout master && git config --unset core.logAllRefUpdates && git checkout -b alpha && - test -f .git/logs/refs/heads/alpha && - PAGER= git reflog show alpha + git rev-parse --verify alpha@{0} ' test_expect_success 'checkout -b does not make reflog when core.logAllRefUpdates = false' ' git checkout master && git config core.logAllRefUpdates false && git checkout -b beta && - ! test -f .git/logs/refs/heads/beta && - ( - PAGER= && - export PAGER && - test_must_fail git reflog show beta - ) + test_must_fail git rev-parse --verify beta@{0} ' test_expect_success 'checkout -b with -l makes reflog when core.logAllRefUpdates = false' ' git checkout master && git checkout -lb gamma && git config --unset core.logAllRefUpdates && - test -f .git/logs/refs/heads/gamma && - PAGER= git reflog show gamma + git rev-parse --verify gamma@{0} ' test_expect_success 'avoid ambiguous track' ' -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html