summaryrefslogtreecommitdiff
path: root/t
diff options
context:
space:
mode:
authorÆvar Arnfjörð Bjarmason <avarab@gmail.com>2021-01-12 20:17:59 (GMT)
committerJunio C Hamano <gitster@pobox.com>2021-01-12 22:04:41 (GMT)
commit3373518cc8bd0916581ccfd4a2ee9682d61a8874 (patch)
tree1f46d5bf80a14ada0b15aeb6911376f62060cd62 /t
parent999cfc4f45e90a2eafa9b170d0ab9f0f13cbddb8 (diff)
downloadgit-3373518cc8bd0916581ccfd4a2ee9682d61a8874.zip
git-3373518cc8bd0916581ccfd4a2ee9682d61a8874.tar.gz
git-3373518cc8bd0916581ccfd4a2ee9682d61a8874.tar.bz2
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>
Diffstat (limited to 't')
-rwxr-xr-xt/t4203-mailmap.sh39
-rw-r--r--t/test-lib-functions.sh14
2 files changed, 20 insertions, 33 deletions
diff --git a/t/t4203-mailmap.sh b/t/t4203-mailmap.sh
index 2b342d7..5d92880 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 529f626..b0a5d74 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