Hi Torsten,

On Sun, 24 Jan 2016, Torsten Bögershausen wrote:

> On 24.01.16 11:48, Johannes Schindelin wrote:
> (I had the same reasoning about the CRLF in the working tree:
> We don't need to look at core.autocrlf/attributes, so Ack from me)
> 
> > +test_expect_success 'conflict markers match existing line endings' '
> > +   append_cr <nolf-orig.txt >crlf-orig.txt &&
> > +   append_cr <nolf-diff1.txt >crlf-diff1.txt &&
> > +   append_cr <nolf-diff2.txt >crlf-diff2.txt &&
> > +   test_must_fail git -c core.eol=crlf merge-file -p \
> > +           crlf-diff1.txt crlf-orig.txt crlf-diff2.txt >crlf.txt &&
> > +   test $(tr "\015" Q <crlf.txt | grep "\\.txtQ$" | wc -l) = 3 &&
> > +   test_must_fail git -c core.eol=crlf merge-file -p \
> > +           nolf-diff1.txt nolf-orig.txt nolf-diff2.txt >nolf.txt &&
> > +   test $(tr "\015" Q <nolf.txt | grep "\\.txtQ$" | wc -l) = 0
> > +'
> > +
> 
> Minor remark:
> 
> Ramsay suggested a test that doesn't use grep or wc and looks like this:
> 
> test_expect_success 'conflict markers contain CRLF when core.eol=crlf' '
>   test_must_fail git -c core.eol=crlf merge-file -p \
>     nolf-diff1.txt nolf-orig.txt nolf-diff2.txt >output.txt &&
>   tr "\015" Q <output.txt | sed -n "/^[<=>|].*Q$/p" >out.txt &&
>   cat >expect.txt <<-\EOF &&
>   <<<<<<< nolf-diff1.txtQ
>   ||||||| nolf-orig.txtQ
>   =======Q
>   >>>>>>> nolf-diff2.txtQ
>   EOF
>   test_cmp expect.txt out.txt
> '

Probably he wrapped it at less than 192 columns per row, though ;-)

Seriously again, this longer version might test more, but it definitely
also tests more than what I actually want to test: I am simply interested
to verify that the conflict markers end in CR/LF when appropriate. Read: I
am uncertain that I want to spend the additional lines on testing more
than actually necessary.

Ciao,
Dscho

Reply via email to