[PATCH 1/(3/4)] test: does pre-commit-hook learn authorship?

Subsystems: the rest

DORMANTno replies

2 messages, 2 authors, 2016-06-15 · open the first message on its own page

[PATCH 1/(3/4)] test: does pre-commit-hook learn authorship?

From: Junio C Hamano <hidden>
Date: 2016-06-15 22:53:16

When "--author" option is used to lie the authorship to "git commit"
command, hooks should learn the author name and email just like when
GIT_AUTHOR_NAME and GIT_AUTHOR_EMAIL environment variables are used
to lie the authorship.  Test this.

Signed-off-by: Junio C Hamano <redacted>
---
 * This is the first one of two patches that are shread by two
   approaches. What it tests should be obvious---the current code
   fails with the last piece that use --author.

 t/t7503-pre-commit-hook.sh |   18 ++++++++++++++++++
 1 file changed, 18 insertions(+)
diff --git a/t/t7503-pre-commit-hook.sh b/t/t7503-pre-commit-hook.sh
index ee7f0cd..fc6de5b 100755
--- a/t/t7503-pre-commit-hook.sh
+++ b/t/t7503-pre-commit-hook.sh
@@ -118,4 +118,22 @@ test_expect_success 'with failing hook requiring GIT_PREFIX' '
 	git checkout -- file
 '
 
+test_expect_failure 'check the author in hook' '
+	cat >"$HOOK" <<-\EOF &&
+	test "$GIT_AUTHOR_NAME" = "New Author" &&
+	test "$GIT_AUTHOR_EMAIL" = "newauthor@example.com"
+	EOF
+	test_must_fail git commit --allow-empty -m "by a.u.thor" &&
+	(
+		GIT_AUTHOR_NAME="New Author" &&
+		GIT_AUTHOR_EMAIL="newauthor@example.com" &&
+		export GIT_AUTHOR_NAME GIT_AUTHOR_EMAIL &&
+		git commit --allow-empty -m "by new.author via env" &&
+		git show -s
+	) &&
+	git commit --author="New Author <newauthor@example.com>" \
+		--allow-empty -m "by new.author via command line" &&
+	git show -s
+'
+
 test_done
-- 
1.7.10.rc0.33.g8866af

Re: [PATCH 1/(3/4)] test: does pre-commit-hook learn authorship?

From: Johannes Sixt <hidden>
Date: 2016-06-15 22:53:16

Am 11.03.2012 12:08, schrieb Junio C Hamano:
+test_expect_failure 'check the author in hook' '
+	cat >"$HOOK" <<-\EOF &&
+	test "$GIT_AUTHOR_NAME" = "New Author" &&
+	test "$GIT_AUTHOR_EMAIL" = "newauthor@example.com"
+	EOF
Please insert #!/bin/sh as the first line of the script. We'll need it
on Windows.

-- Hannes
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help