threads / patch / 46787

patcht4014: strengthen search patterns

Subject: [PATCH] t4014: strengthen search patterns

## tl;dr

2 messages between Sep 19, 2017 and Sep 20, 2017. Diffs are folded; open one to read it.

replies: 1people: 2as markdown or json

Kaartic Sivaraam· Sep 19, 2017, 12:46 UTC · lore

The regex patterns for some failing test cases were a bit loose giving way for a few incorrect outputs being accepted as correct outputs.

To avoid such incorrect outputs from being flagged as correct ones use fixed string matches when possible and strengthen regex when it's not.

Signed-off-by: Kaartic Sivaraam <kaarticsivaraam91196@gmail.com>
---
 t/t4014-format-patch.sh | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)
Show changes to t/t4014-format-patch.sh +5 −6
diff --git a/t/t4014-format-patch.sh b/t/t4014-format-patch.sh
index 482112ca339f0..7dff7996c9e1f 100755
--- a/t/t4014-format-patch.sh
+++ b/t/t4014-format-patch.sh
@@ -163,7 +163,7 @@ test_expect_failure 'additional command line cc (rfc822)' '
 	git config --replace-all format.headers "Cc: R E Cipient <rcipient@example.com>" &&
 	git format-patch --cc="S. E. Cipient <scipient@example.com>" --stdout master..side | sed -e "/^\$/q" >patch5 &&
 	grep "^Cc: R E Cipient <rcipient@example.com>,\$" patch5 &&
-	grep "^ *\"S. E. Cipient\" <scipient@example.com>\$" patch5
+	grep "^ *\"S\. E\. Cipient\" <scipient@example\.com>\$" patch5
 '
 
 test_expect_success 'command line headers' '
@@ -191,13 +191,13 @@ test_expect_success 'command line To: header (ascii)' '
 test_expect_failure 'command line To: header (rfc822)' '
 
 	git format-patch --to="R. E. Cipient <rcipient@example.com>" --stdout master..side | sed -e "/^\$/q" >patch8 &&
-	grep "^To: \"R. E. Cipient\" <rcipient@example.com>\$" patch8
+	grep -F "To: \"R. E. Cipient\" <rcipient@example.com>" patch8
 '
 
 test_expect_failure 'command line To: header (rfc2047)' '
 
 	git format-patch --to="R Ä Cipient <rcipient@example.com>" --stdout master..side | sed -e "/^\$/q" >patch8 &&
-	grep "^To: =?UTF-8?q?R=20=C3=84=20Cipient?= <rcipient@example.com>\$" patch8
+	grep "^To: =?UTF-8?q?R=20=C3=84=20Cipient?= <rcipient@example\.com>\$" patch8
 '
 
 test_expect_success 'configuration To: header (ascii)' '
@@ -211,14 +211,14 @@ test_expect_failure 'configuration To: header (rfc822)' '
 
 	git config format.to "R. E. Cipient <rcipient@example.com>" &&
 	git format-patch --stdout master..side | sed -e "/^\$/q" >patch9 &&
-	grep "^To: \"R. E. Cipient\" <rcipient@example.com>\$" patch9
+	grep -F "To: \"R. E. Cipient\" <rcipient@example.com>" patch9
 '
 
 test_expect_failure 'configuration To: header (rfc2047)' '
 
 	git config format.to "R Ä Cipient <rcipient@example.com>" &&
 	git format-patch --stdout master..side | sed -e "/^\$/q" >patch9 &&
-	grep "^To: =?UTF-8?q?R=20=C3=84=20Cipient?= <rcipient@example.com>\$" patch9
+	grep "^To: =?UTF-8?q?R=20=C3=84=20Cipient?= <rcipient@example\.com>\$" patch9
 '
 
 # check_patch <patch>: Verify that <patch> looks like a half-sane

--
https://github.com/git/git/pull/406
Junio C Hamano· Sep 20, 2017, 02:50 UTC · re: Kaartic Sivaraam · lore

Re: [PATCH] t4014: strengthen search patterns

Kaartic Sivaraam <kaarticsivaraam91196@gmail.com> writes:
> The regex patterns for some failing test cases were a bit loose
> giving way for a few incorrect outputs being accepted as correct
> outputs.

If these were part of scripted Porcelain that needs to take any end-user input, then having '.' that are meant to match only a dot is a bug, but I personally do not think it is worth the patch noise to quote them, when we _know_ (after all, we are in control of the data we use for these tests) there is no other lines that would match these patterns.

Show 58 quoted lines
> To avoid such incorrect outputs from being flagged as correct ones
> use fixed string matches when possible and strengthen regex when
> it's not.
>
> Signed-off-by: Kaartic Sivaraam <kaarticsivaraam91196@gmail.com>
> ---
>  t/t4014-format-patch.sh | 10 +++++-----
>  1 file changed, 5 insertions(+), 5 deletions(-)
>
> diff --git a/t/t4014-format-patch.sh b/t/t4014-format-patch.sh
> index 482112ca339f0..7dff7996c9e1f 100755
> --- a/t/t4014-format-patch.sh
> +++ b/t/t4014-format-patch.sh
> @@ -163,7 +163,7 @@ test_expect_failure 'additional command line cc (rfc822)' '
>  	git config --replace-all format.headers "Cc: R E Cipient <rcipient@example.com>" &&
>  	git format-patch --cc="S. E. Cipient <scipient@example.com>" --stdout master..side | sed -e "/^\$/q" >patch5 &&
>  	grep "^Cc: R E Cipient <rcipient@example.com>,\$" patch5 &&
> -	grep "^ *\"S. E. Cipient\" <scipient@example.com>\$" patch5
> +	grep "^ *\"S\. E\. Cipient\" <scipient@example\.com>\$" patch5
>  '
>  
>  test_expect_success 'command line headers' '
> @@ -191,13 +191,13 @@ test_expect_success 'command line To: header (ascii)' '
>  test_expect_failure 'command line To: header (rfc822)' '
>  
>  	git format-patch --to="R. E. Cipient <rcipient@example.com>" --stdout master..side | sed -e "/^\$/q" >patch8 &&
> -	grep "^To: \"R. E. Cipient\" <rcipient@example.com>\$" patch8
> +	grep -F "To: \"R. E. Cipient\" <rcipient@example.com>" patch8
>  '
>  
>  test_expect_failure 'command line To: header (rfc2047)' '
>  
>  	git format-patch --to="R Ä Cipient <rcipient@example.com>" --stdout master..side | sed -e "/^\$/q" >patch8 &&
> -	grep "^To: =?UTF-8?q?R=20=C3=84=20Cipient?= <rcipient@example.com>\$" patch8
> +	grep "^To: =?UTF-8?q?R=20=C3=84=20Cipient?= <rcipient@example\.com>\$" patch8
>  '
>  
>  test_expect_success 'configuration To: header (ascii)' '
> @@ -211,14 +211,14 @@ test_expect_failure 'configuration To: header (rfc822)' '
>  
>  	git config format.to "R. E. Cipient <rcipient@example.com>" &&
>  	git format-patch --stdout master..side | sed -e "/^\$/q" >patch9 &&
> -	grep "^To: \"R. E. Cipient\" <rcipient@example.com>\$" patch9
> +	grep -F "To: \"R. E. Cipient\" <rcipient@example.com>" patch9
>  '
>  
>  test_expect_failure 'configuration To: header (rfc2047)' '
>  
>  	git config format.to "R Ä Cipient <rcipient@example.com>" &&
>  	git format-patch --stdout master..side | sed -e "/^\$/q" >patch9 &&
> -	grep "^To: =?UTF-8?q?R=20=C3=84=20Cipient?= <rcipient@example.com>\$" patch9
> +	grep "^To: =?UTF-8?q?R=20=C3=84=20Cipient?= <rcipient@example\.com>\$" patch9
>  '
>  
>  # check_patch <patch>: Verify that <patch> looks like a half-sane
>
> --
> https://github.com/git/git/pull/406

← back to recent threads