t6006: simplify, fix, and optimize empty message test
Test t6006.71 ("oneline with empty message") was creating two commits
with simple commit messages, and then running filter-branch to rewrite
the commit messages to be "empty". This test was introduced in commit
1fb5fdd25f
("rev-list: fix --pretty=oneline with empty message",
2010-03-21) and written this way because the --allow-empty-message
option to git commit did not exist at the time.
However, the filter-branch invocation used differed slightly from
--allow-empty-message in that it would have a commit message consisting
solely of a single newline, and as such was not testing what the
original commit intended to test. Since both a truly empty commit
message and a commit message with a single linefeed could trigger the
original bug, modify the test slightly to include an example of each.
Despite only being one piece of the 71st test and there being 73 tests
overall, this small change to just this one test speeds up the overall
execution time of t6006 (as measured by the best of 3 runs of `time
./t6006-rev-list-format.sh`) by about 11% on Linux, 13% on Mac, and
about 15% on Windows.
Signed-off-by: Elijah Newren <newren@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
parent
745f681289
commit
7b6ad97939
@ -501,9 +501,8 @@ test_expect_success 'reflog identity' '
|
||||
'
|
||||
|
||||
test_expect_success 'oneline with empty message' '
|
||||
git commit -m "dummy" --allow-empty &&
|
||||
git commit -m "dummy" --allow-empty &&
|
||||
git filter-branch --msg-filter "sed -e s/dummy//" HEAD^^.. &&
|
||||
git commit --allow-empty --cleanup=verbatim -m "$LF" &&
|
||||
git commit --allow-empty --allow-empty-message &&
|
||||
git rev-list --oneline HEAD >test.txt &&
|
||||
test_line_count = 5 test.txt &&
|
||||
git rev-list --oneline --graph HEAD >testg.txt &&
|
||||
|
Loading…
Reference in New Issue
Block a user