diff options
author | Ævar Arnfjörð Bjarmason <avarab@gmail.com> | 2021-01-12 21:17:59 +0100 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2021-01-12 14:04:41 -0800 |
commit | 3373518cc8bd0916581ccfd4a2ee9682d61a8874 (patch) | |
tree | 1f46d5bf80a14ada0b15aeb6911376f62060cd62 | |
parent | test-lib functions: add --author support to test_commit (diff) | |
download | tgif-3373518cc8bd0916581ccfd4a2ee9682d61a8874.tar.xz |
test-lib functions: add an --append option to test_commit
Add an --append option to test_commit to append <contents> to the
<file> we're writing to. This simplifies a lot of test setup, as shown
in some of the tests being changed here.
Signed-off-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
-rwxr-xr-x | t/t4203-mailmap.sh | 39 | ||||
-rw-r--r-- | t/test-lib-functions.sh | 14 |
2 files changed, 20 insertions, 33 deletions
diff --git a/t/t4203-mailmap.sh b/t/t4203-mailmap.sh index 2b342d7f7c..5d92880a5a 100755 --- a/t/t4203-mailmap.sh +++ b/t/t4203-mailmap.sh @@ -5,14 +5,8 @@ test_description='.mailmap configurations' . ./test-lib.sh test_expect_success 'setup commits and contacts file' ' - echo one >one && - git add one && - test_tick && - git commit -m initial && - echo two >>one && - git add one && - test_tick && - git commit --author "nick1 <bugs@company.xx>" -m second + test_commit initial one one && + test_commit --author "nick1 <bugs@company.xx>" --append second one two ' test_expect_success 'check-mailmap no arguments' ' @@ -436,30 +430,11 @@ test_expect_success 'Shortlog output (complex mapping)' ' Santa Claus <santa.claus@northpole.xx> <me@company.xx> EOF - echo three >>one && - git add one && - test_tick && - git commit --author "nick2 <bugs@company.xx>" -m third && - - echo four >>one && - git add one && - test_tick && - git commit --author "nick2 <nick2@company.xx>" -m fourth && - - echo five >>one && - git add one && - test_tick && - git commit --author "santa <me@company.xx>" -m fifth && - - echo six >>one && - git add one && - test_tick && - git commit --author "claus <me@company.xx>" -m sixth && - - echo seven >>one && - git add one && - test_tick && - git commit --author "CTO <cto@coompany.xx>" -m seventh && + test_commit --author "nick2 <bugs@company.xx>" --append third one three && + test_commit --author "nick2 <nick2@company.xx>" --append fourth one four && + test_commit --author "santa <me@company.xx>" --append fifth one five && + test_commit --author "claus <me@company.xx>" --append sixth one six && + test_commit --author "CTO <cto@coompany.xx>" --append seventh one seven && cat >expect <<-EOF && $GIT_AUTHOR_NAME <$GIT_AUTHOR_EMAIL> (1): diff --git a/t/test-lib-functions.sh b/t/test-lib-functions.sh index 529f6264fe..b0a5d74dc7 100644 --- a/t/test-lib-functions.sh +++ b/t/test-lib-functions.sh @@ -183,6 +183,9 @@ debug () { # Run all git commands in directory <dir> # --notick # Do not call test_tick before making a commit +# --append +# Use "echo >>" instead of "echo >" when writing "<contents>" to +# "<file>" # --signoff # Invoke "git commit" with --signoff # --author=<author> @@ -195,6 +198,7 @@ debug () { test_commit () { notick= && + append= && author= && signoff= && indir= && @@ -204,6 +208,9 @@ test_commit () { --notick) notick=yes ;; + --append) + append=yes + ;; --author) author="$2" shift @@ -223,7 +230,12 @@ test_commit () { done && indir=${indir:+"$indir"/} && file=${2:-"$1.t"} && - echo "${3-$1}" > "$indir$file" && + if test -n "$append" + then + echo "${3-$1}" >>"$indir$file" + else + echo "${3-$1}" >"$indir$file" + fi && git ${indir:+ -C "$indir"} add "$file" && if test -z "$notick" then |