Thread (7 messages) flat view 7 messages, 4 authors, 2016-06-15

Re: 195b7ca6 breaks t9010 at current master

From: Brandon Casey <hidden>
Date: 2016-06-15 22:50:57
Subsystem: the rest · Maintainer: Linus Torvalds

[removed Junio from cc]

On 03/28/2011 11:24 PM, Jonathan Nieder wrote:
quoted hunk ↗ jump to hunk
Hi,

Øyvind A. Holm wrote:
quoted
When running "make test" at current master (v1.7.4.2-406-gbe919d5),
t9010-svn-fe.sh fails. Bisecting shows that 195b7ca6 ("vcs-svn: handle
log message with embedded NUL") breaks the test.
Could you try with the following patch applied?  It comes from
squashing the last two patches from the svn-fe branch:

* tests: make sure input to sed is newline terminated
* vcs-svn: add missing cast to printf argument

Sorry for the breakage.
---
diff --git a/t/t9010-svn-fe.sh b/t/t9010-svn-fe.sh
index 478c860..6f6175a 100755
--- a/t/t9010-svn-fe.sh
+++ b/t/t9010-svn-fe.sh
@@ -407,7 +407,7 @@ test_expect_success 'NUL in log message, file content, and property name' '
 	OBJID
 	:000000 100644 OBJID OBJID A	greeting
 	EOF
-	printf "\n%s" "something with an ASCII NUL (Q)" >expect.message &&
+	printf "\n%s\n" "something with an ASCII NUL (Q)" >expect.message &&
 	printf "%s\n" "helQo" >expect.hello1 &&
 	printf "%s\n" "link hello" >expect.hello2 &&
 	{
@@ -465,7 +465,11 @@ test_expect_success 'NUL in log message, file content, and property name' '
 		git diff-tree --root --stdin |
 		sed "s/$_x40/OBJID/g"
 	} >actual &&
-	git cat-file commit HEAD | nul_to_q | sed -ne "/^\$/,\$ p" >actual.message &&
+	{
+		git cat-file commit HEAD | nul_to_q &&
+		echo
+	} |
+	sed -ne "/^\$/,\$ p" >actual.message &&
 	git cat-file blob HEAD^:greeting | nul_to_q >actual.hello1 &&
 	git cat-file blob HEAD:greeting | nul_to_q >actual.hello2 &&
 	test_cmp expect actual &&
I was just about to send a patch for this, when I noticed it has
already been worked around in master by the above.

I'll still share my one-liner for informational purposes which uses perl
and in my opinion is a little simpler:
diff --git a/t/t9010-svn-fe.sh b/t/t9010-svn-fe.sh
index 478c860..0dcffaa 100755
--- a/t/t9010-svn-fe.sh
+++ b/t/t9010-svn-fe.sh
@@ -465,7 +465,7 @@ test_expect_success 'NUL in log message, file content, and property name' '
                git diff-tree --root --stdin |
                sed "s/$_x40/OBJID/g"
        } >actual &&
-       git cat-file commit HEAD | nul_to_q | sed -ne "/^\$/,\$ p" >actual.message &&
+       git cat-file commit HEAD | nul_to_q | perl -ne "print if (/^$/..eof())" >actual.message &&
        git cat-file blob HEAD^:greeting | nul_to_q >actual.hello1 &&
        git cat-file blob HEAD:greeting | nul_to_q >actual.hello2 &&
        test_cmp expect actual &&

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