Re: t3032 incompatible with Cygwin/Windows

2013-07-18 Thread Ramsay Jones
Mark Levedahl wrote:
 Subtests 6,7, and 9 of t3032 fail on Cygwin, and I presume will fail on 
 msysgit for similar reasons. Looking at test 6, the expected result is a 
 line ending with \r\n in text.txt. This line is extracted with grep 
 (grep 'justice and holiness' text.txt  actual), with unavoidable result 
 that on Cygwin the line ending is \n. This happens because on Cygwin, 
 the text utils are compiled to open files in text mode meaning than \n 
 and \r\n are both recognized as EOL markers. Thus, even though text.txt 
 is an exact match for what is created on Linux, the test fails because 
 \r\n cannot be distinguished by the available tools.
 
 I'm not sure the right way forward. I did confirm that by substituting 
 q_to_tab for q_to_cr in t3032, the test pass on Cygwin and on Linux. 
 Perhaps t3032 should be so amended to avoid use of a non-portable line 
 ending construct?

This passes for me, on both cygwin and MinGW.

After adding a test_pause to test #6:

$ ./t3032-merge-recursive-options.sh -v

...

expecting success:
q_to_cr -\EOF expected 
justice and holiness and is the nurse of his age and theQ
EOF

git read-tree --reset -u HEAD 
git merge-recursive --ignore-space-change HEAD^ -- HEAD remote 
grep justice and holiness text.txt actual 
test_cmp expected actual 
test_pause

Merging HEAD with remote
Merging:
0ab7224 Clarify
be82dcf Remove cruft
found 1 common ancestor:
c1e95d9 Initial revision
Auto-merging text.txt
$ xxd expected
000: 2020 2020 6a75 7374 6963 6520 616e 6420  justice and
010: 686f 6c69 6e65 7373 2061 6e64 2069 7320  holiness and is
020: 7468 6520 6e75 7273 6520 6f66 2068 6973  the nurse of his
030: 2061 6765 2061 6e64 2074 6865 0d0aage and the..
$ xxd actual
000: 2020 2020 6a75 7374 6963 6520 616e 6420  justice and
010: 686f 6c69 6e65 7373 2061 6e64 2069 7320  holiness and is
020: 7468 6520 6e75 7273 6520 6f66 2068 6973  the nurse of his
030: 2061 6765 2061 6e64 2074 6865 0d0aage and the..
$ grep justice and holiness text.txt | xxd
000: 2020 2020 6a75 7374 6963 6520 616e 6420  justice and
010: 686f 6c69 6e65 7373 2061 6e64 2069 7320  holiness and is
020: 7468 6520 6e75 7273 6520 6f66 2068 6973  the nurse of his
030: 2061 6765 2061 6e64 2074 6865 0d0aage and the..
$ exit

...

# passed all 11 test(s)
1..11
$ 

ATB,
Ramsay Jones




--
To unsubscribe from this list: send the line unsubscribe git in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


t3032 incompatible with Cygwin/Windows

2013-07-16 Thread Mark Levedahl
Subtests 6,7, and 9 of t3032 fail on Cygwin, and I presume will fail on 
msysgit for similar reasons. Looking at test 6, the expected result is a 
line ending with \r\n in text.txt. This line is extracted with grep 
(grep 'justice and holiness' text.txt  actual), with unavoidable result 
that on Cygwin the line ending is \n. This happens because on Cygwin, 
the text utils are compiled to open files in text mode meaning than \n 
and \r\n are both recognized as EOL markers. Thus, even though text.txt 
is an exact match for what is created on Linux, the test fails because 
\r\n cannot be distinguished by the available tools.


I'm not sure the right way forward. I did confirm that by substituting 
q_to_tab for q_to_cr in t3032, the test pass on Cygwin and on Linux. 
Perhaps t3032 should be so amended to avoid use of a non-portable line 
ending construct?


Mark
--
To unsubscribe from this list: send the line unsubscribe git in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: t3032 incompatible with Cygwin/Windows

2013-07-16 Thread Jonathan Nieder
Mark Levedahl wrote:

 Subtests 6,7, and 9 of t3032 fail on Cygwin, and I presume will fail
 on msysgit for similar reasons. Looking at test 6, the expected
 result is a line ending with \r\n in text.txt. This line is
 extracted with grep (grep 'justice and holiness' text.txt  actual),
 with unavoidable result that on Cygwin the line ending is \n.

Would using perl instead of grep fix this?
--
To unsubscribe from this list: send the line unsubscribe git in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html