> On Tuesday 23 September 2003 11:23, Antoine Lévy-Lambert wrote:
> > ReplaceTest fails under cygwin.
> >     [junit] Testcase: test9 took 0,13 sec
> >      [junit]        FAILED     [junit] expected:<10> but was:<13>
> >      [junit] junit.framework.AssertionFailedError: expected:<10> but
> > was:<13>
> >
> > This has to do with the fact that the Replace task changes 
> the line endings
> > of tokens and values to 
> System.getProperty("line.separator"), but that the
> > files used for the tests are terminated with \n only when 
> one uses the
> > cvs.exe of cygwin.
> >
> > I can think of several ways of fixing this :
> >
> > - the easiest would be to change the Replace task, not to 
> touch the line
> > endings of tokens and values at all. After all, I do not 
> know why they get
> > such a special treatment. But this would also be a backward 
> incompatible
> > change,
> >
> > - adding an enumerated attribute eol (like in the fixcrlf 
> task) to the
> > nested elements <replacetoken/>, <replacevalue/>, 
> <replacefilter/>. Like in
> > the fixcrlf task, the platform's line separator would be 
> the default there,
> > and "asis" would be used to run the test(s) with 
> predictable results.
> 
> - Change the test... or declare the failure invalid.
>   The test checks line ending without having control of the 
> lineendings as
>   on windows, the cvs client may or may not add <cr>'s to 
> files. For text
>   files it should, but cygwin's cvs client does not do this. A simple
>   fix is to use a cvs client that respects crazy windows/dos behaviour
>   (cvsnt is the one I used when I was on NT).
> 
>   The test could write the expected result instead of using 
> expected files
>   in cvs.
> 
> Peter


I think changing the test would be good.
But why don´t add a <fixcrlf/> before the tests?


Jan

Reply via email to