summaryrefslogtreecommitdiff
path: root/t
diff options
context:
space:
mode:
authorJunio C Hamano <gitster@pobox.com>2016-01-29 00:10:13 (GMT)
committerJunio C Hamano <gitster@pobox.com>2016-01-29 00:10:13 (GMT)
commit4f3aa9da7022c11c5db51b5b9063c0215863aba1 (patch)
tree10d42e9fc0874205bacf6c07ad8d7a070296b497 /t
parent4b16573ce99c46e8c5b4950c44b70f1584b8dca9 (diff)
parente1f898639e906158fec26bdf3111d6f623288fa1 (diff)
downloadgit-4f3aa9da7022c11c5db51b5b9063c0215863aba1.zip
git-4f3aa9da7022c11c5db51b5b9063c0215863aba1.tar.gz
git-4f3aa9da7022c11c5db51b5b9063c0215863aba1.tar.bz2
Merge branch 'tk/interpret-trailers-in-place'
"interpret-trailers" has been taught to optionally update a file in place, instead of always writing the result to the standard output. * tk/interpret-trailers-in-place: interpret-trailers: add option for in-place editing trailer: allow to write to files other than stdout
Diffstat (limited to 't')
-rwxr-xr-xt/t7513-interpret-trailers.sh40
1 files changed, 40 insertions, 0 deletions
diff --git a/t/t7513-interpret-trailers.sh b/t/t7513-interpret-trailers.sh
index 322c436..aee785c 100755
--- a/t/t7513-interpret-trailers.sh
+++ b/t/t7513-interpret-trailers.sh
@@ -326,6 +326,46 @@ test_expect_success 'with complex patch, args and --trim-empty' '
test_cmp expected actual
'
+test_expect_success 'in-place editing with basic patch' '
+ cat basic_message >message &&
+ cat basic_patch >>message &&
+ cat basic_message >expected &&
+ echo >>expected &&
+ cat basic_patch >>expected &&
+ git interpret-trailers --in-place message &&
+ test_cmp expected message
+'
+
+test_expect_success 'in-place editing with additional trailer' '
+ cat basic_message >message &&
+ cat basic_patch >>message &&
+ cat basic_message >expected &&
+ echo >>expected &&
+ cat >>expected <<-\EOF &&
+ Reviewed-by: Alice
+ EOF
+ cat basic_patch >>expected &&
+ git interpret-trailers --trailer "Reviewed-by: Alice" --in-place message &&
+ test_cmp expected message
+'
+
+test_expect_success 'in-place editing on stdin disallowed' '
+ test_must_fail git interpret-trailers --trailer "Reviewed-by: Alice" --in-place < basic_message
+'
+
+test_expect_success 'in-place editing on non-existing file' '
+ test_must_fail git interpret-trailers --trailer "Reviewed-by: Alice" --in-place nonexisting &&
+ test_path_is_missing nonexisting
+'
+
+test_expect_success POSIXPERM,SANITY "in-place editing doesn't clobber original file on error" '
+ cat basic_message >message &&
+ chmod -r message &&
+ test_must_fail git interpret-trailers --trailer "Reviewed-by: Alice" --in-place message &&
+ chmod +r message &&
+ test_cmp message basic_message
+'
+
test_expect_success 'using "where = before"' '
git config trailer.bug.where "before" &&
cat complex_message_body >expected &&