diff options
author | Martin Ågren <martin.agren@gmail.com> | 2017-11-19 16:03:48 +0100 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2017-11-20 09:50:25 +0900 |
commit | ed104fa9e1016f8ac5f85642ed11e16b09510bea (patch) | |
tree | ed7e7b287c071a579ed2a952ef5dddf81fc55d8b | |
parent | git.c: ignore pager.* when launching builtin as dashed external (diff) | |
download | tgif-ed104fa9e1016f8ac5f85642ed11e16b09510bea.tar.xz |
t7006: add tests for how git branch paginates
The next couple of commits will change how `git branch` handles
`pager.branch`, similar to how de121ffe5 (tag: respect `pager.tag` in
list-mode only, 2017-08-02) and ff1e72483 (tag: change default of
`pager.tag` to "on", 2017-08-02) changed `git tag`.
Add tests in this area to make sure that we don't regress and so that
the upcoming commits can be made clearer by adapting the tests. Add some
tests for `--list` (implied), one for `--edit-description`, and one for
`--set-upstream-to` as a representative of "something other than the
first two".
In particular, use `test_expect_failure` to document that we currently
respect the pager-configuration with `--edit-description`. The current
behavior is buggy since the pager interferes with the editor and makes
the end result completely broken. See also b3ee740c8 (t7006: add tests
for how git tag paginates, 2017-08-02).
Signed-off-by: Martin Ågren <martin.agren@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
-rwxr-xr-x | t/t7006-pager.sh | 38 |
1 files changed, 38 insertions, 0 deletions
diff --git a/t/t7006-pager.sh b/t/t7006-pager.sh index 9128ec5acd..12c72ef967 100755 --- a/t/t7006-pager.sh +++ b/t/t7006-pager.sh @@ -214,6 +214,44 @@ test_expect_success TTY 'git tag as alias respects pager.tag with -l' ' ! test -e paginated.out ' +test_expect_success TTY 'git branch defaults to not paging' ' + rm -f paginated.out && + test_terminal git branch && + ! test -e paginated.out +' + +test_expect_success TTY 'git branch respects pager.branch' ' + rm -f paginated.out && + test_terminal git -c pager.branch branch && + test -e paginated.out +' + +test_expect_success TTY 'git branch respects --no-pager' ' + rm -f paginated.out && + test_terminal git -c pager.branch --no-pager branch && + ! test -e paginated.out +' + +test_expect_failure TTY 'git branch --edit-description ignores pager.branch' ' + rm -f paginated.out editor.used && + write_script editor <<-\EOF && + echo "New description" >"$1" + touch editor.used + EOF + EDITOR=./editor test_terminal git -c pager.branch branch --edit-description && + ! test -e paginated.out && + test -e editor.used +' + +test_expect_success TTY 'git branch --set-upstream-to respects pager.branch' ' + rm -f paginated.out && + git branch other && + test_when_finished "git branch -D other" && + test_terminal git -c pager.branch branch --set-upstream-to=other && + test_when_finished "git branch --unset-upstream" && + test -e paginated.out +' + # A colored commit log will begin with an appropriate ANSI escape # for the first color; the text "commit" comes later. colorful() { |