Re: [PATCH 1/3] rebase -i: highlight problems with core.commentchar
From: Junio C Hamano <hidden>
Date: 2016-11-21 20:26:40
Junio C Hamano [off-list ref] writes:
From: Johannes Schindelin <redacted> The interactive rebase does not currently play well with core.commentchar. Let's add some tests to highlight those problems that will be fixed in the remainder of the series. Signed-off-by: Johannes Schindelin <redacted> Signed-off-by: Junio C Hamano <redacted> ---
Sorry, I should have commented here after --- line what changes were proposed by this set of amends.
quoted hunk
t/t0030-stripspace.sh | 9 +++++++++ t/t3404-rebase-interactive.sh | 11 +++++++++++ 2 files changed, 20 insertions(+)diff --git a/t/t0030-stripspace.sh b/t/t0030-stripspace.sh index 29e91d861c..c1f6411eb2 100755 --- a/t/t0030-stripspace.sh +++ b/t/t0030-stripspace.sh@@ -432,6 +432,15 @@ test_expect_success '-c with changed comment char' ' test_cmp expect actual ' +test_expect_failure '-c with comment char defined in .git/config' ' + test_config core.commentchar = && + printf "= foo\n" >expect && + printf "foo" | ( + mkdir sub && cd sub && git stripspace -c + ) >actual && + test_cmp expect actual +'
I noticed that the lack of "\n" at the end was merely copied from the
previous existing test (i.e. "-c with with changed comment char"),
which was already wrong the same way, so I kept that part as-is.
Running "stripspace" in a subdirectory is to avoid the ".git/config
was read without repository discovery as long as the command runs at
the top-level of the working tree" accident so that this highlights
the breakage with or without Peff's b9605bc4f2 ("config: only read
.git/config from configured repos", 2016-09-12).
quoted hunk
+ test_expect_success 'avoid SP-HT sequence in commented line' ' printf "#\tone\n#\n# two\n" >expect && printf "\tone\n\ntwo\n" | git stripspace -c >actual &&diff --git a/t/t3404-rebase-interactive.sh b/t/t3404-rebase-interactive.sh index d6d65a3a94..d941f0a69f 100755 --- a/t/t3404-rebase-interactive.sh +++ b/t/t3404-rebase-interactive.sh@@ -983,6 +983,17 @@ test_expect_success 'rebase -i respects core.commentchar' ' test B = $(git cat-file commit HEAD^ | sed -ne \$p) ' +test_expect_failure 'rebase -i respects core.commentchar=auto' ' + test_config core.commentchar auto && + write_script copy-edit-script.sh <<-\EOF && + cp "$1" edit-script + EOF + test_set_editor "$(pwd)/copy-edit-script.sh" && + test_when_finished "git rebase --abort || :" && + git rebase -i HEAD^ && + test -z "$(grep -ve "^#" -e "^\$" -e "^pick" edit-script)" +' +
Removed from here is a leftover debugging bit (grep "^#" edit-script).