diff options
author | Junio C Hamano <gitster@pobox.com> | 2021-12-22 02:03:15 +0300 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2021-12-22 02:03:15 +0300 |
commit | 00cbaf93628282779504b470653ad239c4eca463 (patch) | |
tree | 0c6bf318a2e00ef74aa2cf56bb82db08e74bcc8a /t | |
parent | 57f28f40943c077ef1dc11c693d693b1bd6b7f2f (diff) | |
parent | be738607934ceb0c99fbcc81bb1949413acd3459 (diff) |
Merge branch 'jk/log-decorate-opts-with-implicit-decorate'
When "git log" implicitly enabled the "decoration" processing
without being explicitly asked with "--decorate" option, it failed
to read and honor the settings given by the "--decorate-refs"
option.
* jk/log-decorate-opts-with-implicit-decorate:
log: load decorations with --simplify-by-decoration
log: handle --decorate-refs with userformat "%d"
Diffstat (limited to 't')
-rwxr-xr-x | t/t4202-log.sh | 37 |
1 files changed, 37 insertions, 0 deletions
diff --git a/t/t4202-log.sh b/t/t4202-log.sh index 7884e3d46b..7a725b9a23 100755 --- a/t/t4202-log.sh +++ b/t/t4202-log.sh @@ -952,6 +952,43 @@ test_expect_success 'decorate-refs-exclude and simplify-by-decoration' ' test_cmp expect.decorate actual ' +test_expect_success 'decorate-refs with implied decorate from format' ' + cat >expect <<-\EOF && + side-2 (tag: side-2) + side-1 + EOF + git log --no-walk --format="%s%d" \ + --decorate-refs="*side-2" side-1 side-2 \ + >actual && + test_cmp expect actual +' + +test_expect_success 'implied decorate does not override option' ' + cat >expect <<-\EOF && + side-2 (tag: refs/tags/side-2, refs/heads/side) + side-1 (tag: refs/tags/side-1) + EOF + git log --no-walk --format="%s%d" \ + --decorate=full side-1 side-2 \ + >actual && + test_cmp expect actual +' + +test_expect_success 'decorate-refs and simplify-by-decoration without output' ' + cat >expect <<-\EOF && + side-2 + initial + EOF + # Do not just use a --format without %d here; we want to + # make sure that we did not accidentally turn on displaying + # the decorations, too. And that requires one of the regular + # formats. + git log --decorate-refs="*side-2" --oneline \ + --simplify-by-decoration >actual.raw && + sed "s/^[0-9a-f]* //" <actual.raw >actual && + test_cmp expect actual +' + test_expect_success 'log.decorate config parsing' ' git log --oneline --decorate=full >expect.full && git log --oneline --decorate=short >expect.short && |