Re: [PATCH 3/6] lib-rebase.sh: introduce test_commit() and test_merge() helpers
From: Junio C Hamano <hidden>
Date: 2016-06-15 22:46:02
Johannes Schindelin [off-list ref] writes:
This may want to live in test-lib.sh instead.
Yeah, I tend to agree.
quoted hunk
diff --git a/t/lib-rebase.sh b/t/lib-rebase.sh index cda7778..37430f3 100644 --- a/t/lib-rebase.sh +++ b/t/lib-rebase.sh@@ -46,3 +46,29 @@ EOF test_set_editor "$(pwd)/fake-editor.sh" chmod a+x fake-editor.sh } + +# Call test_commit with the arguments "<message> [<file> [<contents>]]" +# +# This will commit a file with the given contents and the given commit +# message. It will also add a tag with <message> as name. +# +# Both <file> and <contents> default to <message>. + +test_commit () { + file=$2 + test -z "$2" && file=$(echo "$1" | tr 'A-Z' 'a-z')
file=${2:-$(echo "$1" | tr 'A-Z' 'a-z')}
might be more consistent with this:
+ echo ${3-$1} > $file &&
and may be easier to read.
I'd suggest dquoting argument to echo above, i.e. "${3-$1}", and all the
references to positional arguments in the remainder of the patch, though.
+ git add $file &&
as well as "$file" here.
+ test_tick &&
+ git commit -m $1 &&
+ git tag $1
+}
+
+# Call test_merge with the arguments "<message> <commit>", where <commit>
+# can be a tag pointing to the commit-to-merge.
+
+test_merge () {
+ test_tick &&
+ git merge -m $1 $2 &&
+ git tag $1
+}
--
1.6.1.482.g7d54be