> I am trying to check if a file called TestSummary.txt does NOT contains the 
> string "Number of failures = 0".
> If it does not contain "Number of failures = 0" then I need to set a property 
> called test.status.failed.
> When I try to test the ant script below I get:

<fileset> indeed doesn't support nested conditions, but selectors instead.

Use <loadfile> to put the file (or part of it as I do below) into a
property, and then simply test it with an <equals> condition to set
another property in a <condition>.

        <loadfile property="@{property}" failonerror="false" srcfile="@{file}">
          <filterchain>
            <!-- Consider only the last 10 lines of the file, -->
            <tailfilter />
            <!-- looking for a integer then a user-defined pattern, -->
            <linecontainsregexp>
              <regexp pattern="^\d+ @{pattern}" />
            </linecontainsregexp>
            <!-- and keep only the integer from these (unique) lines, -->
            <tokenfilter>
              <replaceregex pattern="(\d+) @{pattern}.*" replace="\1" />
            </tokenfilter>
            <!-- concatenating these lines (should be only one). -->
            <striplinebreaks/>
          </filterchain>
        </loadfile>
        <property name="@{property}" value="@{default}" />

PS: This code was part of a macrodef. Ignore the @{foo} syntax.

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to