On 12 December 2006 at 1:37, "Alexei Zakharov"
<[EMAIL PROTECTED]> wrote:
>
> Nice! Thank you for sharing this piece of code Mark. I also rise all
> my hands for avoiding any extra dependencies if possible. However, it
> seems that the code above misses one of the important feature from the
> original Vladimir's patch - it doesn't allow junit report to see the
> name of failed test class.
Sorry, I must have missed that point when scanning the changes. I can
see why it might be useful to get junit to see that there has been a
problem.
> Today I was trying to rewrite your code a little bit. And I ended up
> with the following not-very-readable text:
>
> <target name="fill-empty">
> <fileset id="empty.test.reports" dir="${tests.output}">
> <patternset>
> <include name="TEST-*.xml"/>
> </patternset>
> <size value="0" when="equal"/>
> </fileset>
>
> <replaceregexp match=".*">
> <fileset refid="empty.test.reports"/>
> <substitution expression="<?xml version='1.0'
> encoding='UTF-8' ?><testsuite errors='1' failures='0'
> name='@@@@@' tests='1' time='0.01'><testcase classname='@@@@@'
> name='testUnknow' time='0.0'><error
> message='crash?'/></testcase></testsuite>"/>
> </replaceregexp>
> </target>
>
> But I can't find a way to replace '@@@@@' with the name of failed test
> class using only core ant tasks (see Vladimir's patch). Of course I
> can be not good enough in it. If there is such way could you please
> give us a hint?
I can't see how to do exactly what you want, but perhaps it would be
sufficient to use the echo task to create a "TEST-crashed.xml" file with
the list of tests (pathconvert with dirsep="${line.separator}") as the
error message?
HTH,
Mark.
> Thanks!
>
> 2006/12/11, Vladimir Ivanov <[EMAIL PROTECTED]>:
> > Agree, this approach is better than additional dependency.
> >
> > Alexei, please, throw out my jira and use this code.
> >
> > Thanks, Vladimir
> >
> >
> > On 12/10/06, Mark Hindess <[EMAIL PROTECTED]> wrote:
> > >
> > >
> > > Please don't add this dependency. We should use something like:
> > >
> > > <project name="test">
> > > <target name="check-for-empty" depends="-check-for-empty, fail-if-empty"
> > > />
> > > <target name="-check-for-empty">
> > > <fileset id="empty.test.reports" dir="test_report">
> > > <patternset>
> > > <include name="TEST-*.xml"/>
> > > </patternset>
> > > <size value="0" when="equal"/>
> > > </fileset>
> > > <pathconvert refid="empty.test.reports" property="crashed.tests" />
> > > <condition property="tests.crashed">
> > > <not>
> > > <equals arg1="" arg2="${crashed.tests}" />
> > > </not>
> > > </condition>
> > > </target>
> > > <target name="fail-if-empty" if="${crashed.tests}">
> > > <fail>Crashed tests: "${crashed.tests}"</fail>
> > > </target>
> > > </project>
> > >
> > >
> > > -Mark.
> > >
> > > On 9 December 2006 at 23:29, "Alexei Zakharov" <[EMAIL PROTECTED]
> >
> > > wrote:
> > > > All,
> > > >
> > > > I am going to commit changes for HARMONY-2349 ([classlib][testing]
> > > > "detect crashes by the empty report files") now. However, I've
> > > > realized that in order to do this I need to introduce a new dependency
> > > > to our list of classlib dependencies - the ant-contrib package.
> > > > Personally I don't see any harm in this. It is quite nice package, we
> > > > can also use it for organizing iterative test runs for example.
> > > > Moreover, there is no need to force users to copy it to ANT_HOME/lib
> > > > or wherever since ant's taskdef target is capable to load JAR's
> > > > dynamically. BTW, DRLVM build has been using ant-contrib from the
> > > > beginning.
> > > >
> > > > But I'd like to hear from others. Is ant-contrib ok with everyone?
> > > >
> > > > Thanks,
> > > >
> > > > 2006/12/8, Vladimir Ivanov <[EMAIL PROTECTED]>:
> > > > > The last CC notification for 'Linux SUSE 9 gcc debug: classlib over
> > > ibmvm'
> > > > > has failed status due to "There were test errors" but on the next lin
> e
> > > it
> > > > > told "All Tests Passed".
> > > > >
> > > > >
> > > > >
> > > > > Note, it happened due to test crash:
> > > > >
> > > > > [Fatal Error] :-1:-1: Premature end of file.
> > > > >
> > > > > The file
> > > > > /export/viv/trunk/cc/projects/classlib/trunk/build/test_report/TEST-
> > > > > org.apache.harmony.security.tests.java.security.IdentityScope2Test.xm
> lis
> > > > > not a valid XML document. It is possibly corrupted.
> > > > >
> > > > >
> > > > >
> > > > > This crash change the build status to 'FAILED' but no report file wer
> e
> > > > > generated so junit- reporter miss this crash.
>
>
> --
> Alexei Zakharov,
> Intel ESSD
>