mbenson     2004/02/16 11:39:13

  Modified:    src/etc/testcases/taskdefs/exec exec.xml
               src/testcases/org/apache/tools/ant/taskdefs
                        ExecTaskTest.java
  Added:       src/etc/testcases/taskdefs/exec apply.xml parrot.sh
               src/testcases/org/apache/tools/ant/taskdefs
                        ExecuteOnTest.java
  Log:
  Add several I/O related test cases to <exec> and <apply>.
  
  PR: 26663
  
  Revision  Changes    Path
  1.3       +81 -3     ant/src/etc/testcases/taskdefs/exec/exec.xml
  
  Index: exec.xml
  ===================================================================
  RCS file: /home/cvs/ant/src/etc/testcases/taskdefs/exec/exec.xml,v
  retrieving revision 1.2
  retrieving revision 1.3
  diff -u -r1.2 -r1.3
  --- exec.xml  4 Aug 2003 22:23:57 -0000       1.2
  +++ exec.xml  16 Feb 2004 19:39:13 -0000      1.3
  @@ -3,7 +3,7 @@
           <!-- this property can be overriden programatically in the Java test 
case -->
           <property name="timeToWait" value="10"/>
           <!-- this property can be overriden programatically in the Java test 
case -->
  -        <property name="logFile" value="/tmp/spawn.log"/>
  +        <property name="logFile" value="${java.io.tmpdir}/spawn.log"/>
           <property environment="env"/>
           <!-- UNIX -->
           <available file="sh" filepath="${env.PATH}" 
property="sh.executable"/>
  @@ -15,7 +15,18 @@
                   <isset property="sh.exe.executable"/>
               </or>
           </condition>
  +        <!-- UNIX -->
  +        <available file="wc" filepath="${env.PATH}" 
property="wc.executable"/>
  +        <!-- CYGWIN -->
  +        <available file="wc.exe" filepath="${env.PATH}" 
property="wc.exe.executable"/>
  +        <condition property="wc.can.run">
  +            <or>
  +                <isset property="wc.executable"/>
  +                <isset property="wc.exe.executable"/>
  +            </or>
  +        </condition>
       </target>
  +
       <target name="spawn" depends="init" if="test.can.run">
           <exec executable="sh" spawn="true">
               <arg value="spawn.sh"/>
  @@ -23,7 +34,74 @@
               <arg value="${logFile}" />
           </exec>
       </target>
  +
  +    <target name="no-redirect" depends="init" if="test.can.run">
  +        <exec executable="sh">
  +            <arg value="parrot.sh"/>
  +            <arg value="${ant.file}" />
  +        </exec>
  +    </target>
  +
  +    <target name="redirect1" depends="init" if="test.can.run">
  +        <exec executable="sh" output="redirect.out">
  +            <arg value="parrot.sh"/>
  +            <arg value="${ant.file}" />
  +        </exec>
  +    </target>
  +
  +    <target name="redirect2" depends="init" if="test.can.run">
  +        <exec executable="sh" output="redirect.out" error="redirect.err">
  +            <arg value="parrot.sh"/>
  +            <arg value="${ant.file}" />
  +        </exec>
  +    </target>
  +
  +    <target name="redirect3" depends="init" if="test.can.run">
  +        <exec executable="sh" logerror="true"
  +              output="redirect.out" outputproperty="redirect.out">
  +            <arg value="parrot.sh"/>
  +            <arg value="${ant.file}" />
  +        </exec>
  +    </target>
  +
  +    <target name="redirect4" depends="init" if="test.can.run">
  +        <exec executable="sh"
  +              error="redirect.err" errorproperty="redirect.err"
  +              output="redirect.out" outputproperty="redirect.out">
  +            <arg value="parrot.sh"/>
  +            <arg value="${ant.file}" />
  +        </exec>
  +    </target>
  +
  +    <target name="redirect5" depends="init" if="wc.can.run">
  +        <exec executable="wc" inputstring="x y z"
  +              error="redirect.err" errorproperty="redirect.err"
  +              output="redirect.out" outputproperty="redirect.out">
  +            <arg value="-w"/>
  +        </exec>
  +    </target>
  +
  +    <target name="redirect6" depends="init" if="wc.can.run">
  +        <echo file="redirect.in">x y z</echo>
  +        <exec executable="wc" input="redirect.in"
  +              error="redirect.err" errorproperty="redirect.err"
  +              output="redirect.out" outputproperty="redirect.out">
  +            <arg value="-w"/>
  +        </exec>
  +    </target>
  +
  +    <target name="redirect7" depends="init" if="wc.can.run">
  +        <exec executable="wc" inputstring="x y z"
  +              error="redirect.err"
  +              output="redirect.out" outputproperty="redirect.out">
  +            <arg value="-w"/>
  +        </exec>
  +    </target>
  +
       <target name="cleanup">
  -        <delete file="${logFile}"/>
  +        <delete>
  +            <fileset file="${logFile}" />
  +            <fileset dir="${basedir}" includes="redirect.*" />
  +        </delete>
       </target>
  -</project>
  \ No newline at end of file
  +</project>
  
  
  
  1.1                  ant/src/etc/testcases/taskdefs/exec/apply.xml
  
  Index: apply.xml
  ===================================================================
  <project name="apply-test" basedir=".">
      <target name="init">
          <property environment="env"/>
          <!-- UNIX -->
          <available file="sh" filepath="${env.PATH}" property="sh.executable"/>
          <!-- CYGWIN -->
          <available file="sh.exe" filepath="${env.PATH}" 
property="sh.exe.executable"/>
          <condition property="test.can.run">
              <or>
                  <isset property="sh.executable"/>
                  <isset property="sh.exe.executable"/>
              </or>
          </condition>
          <!-- UNIX -->
          <available file="wc" filepath="${env.PATH}" property="wc.executable"/>
          <!-- CYGWIN -->
          <available file="wc.exe" filepath="${env.PATH}" 
property="wc.exe.executable"/>
          <condition property="wc.can.run">
              <or>
                  <isset property="wc.executable"/>
                  <isset property="wc.exe.executable"/>
              </or>
          </condition>
          <!-- UNIX -->
          <available file="sed" filepath="${env.PATH}" 
property="sed.executable"/>
          <!-- CYGWIN -->
          <available file="sed.exe" filepath="${env.PATH}" 
property="sed.exe.executable"/>
          <condition property="sed.can.run">
              <or>
                  <isset property="sed.executable"/>
                  <isset property="sed.exe.executable"/>
              </or>
          </condition>
      </target>
  
      <target name="xyz">
          <echo file="x">s/x/blah/g${line.separator}</echo>
          <echo file="y">s/y/blah/g${line.separator}</echo>
          <echo file="z">s/z/blah/g${line.separator}</echo>
          <fileset id="xyz" dir="${basedir}" includes="x,y,z" />
      </target>
  
      <target name="no-redirect" depends="init,xyz" if="test.can.run">
          <apply executable="sh">
              <arg value="parrot.sh"/>
              <fileset refid="xyz" />
          </apply>
      </target>
  
      <target name="redirect1" depends="init,xyz" if="test.can.run">
          <apply executable="sh" output="redirect.out" append="true">
              <arg value="parrot.sh"/>
              <fileset refid="xyz" />
          </apply>
      </target>
  
      <target name="redirect2" depends="init,xyz" if="test.can.run">
          <apply executable="sh" output="redirect.out"
                 error="redirect.err" append="true">
              <arg value="parrot.sh"/>
              <fileset refid="xyz" />
          </apply>
      </target>
  
      <target name="redirect3" depends="init,xyz" if="test.can.run">
          <apply executable="sh" logerror="true" append="true"
                output="redirect.out" outputproperty="redirect.out">
              <arg value="parrot.sh"/>
              <fileset refid="xyz" />
          </apply>
      </target>
  
      <target name="redirect4" depends="init,xyz" if="test.can.run">
          <apply executable="sh" append="true"
                error="redirect.err" errorproperty="redirect.err"
                output="redirect.out" outputproperty="redirect.out">
              <arg value="parrot.sh"/>
              <fileset refid="xyz" />
          </apply>
      </target>
  
      <target name="redirect5" depends="init,xyz" if="sed.can.run">
          <apply executable="sed" inputstring="x y z${line.separator}" 
append="true"
                error="redirect.err" errorproperty="redirect.err"
                output="redirect.out" outputproperty="redirect.out">
              <arg value="-f"/>
              <fileset refid="xyz" />
          </apply>
      </target>
  
      <target name="redirect6" depends="init,xyz" if="sed.can.run">
          <echo file="redirect.in">x y z${line.separator}</echo>
          <apply executable="sed" input="redirect.in" append="true"
                error="redirect.err" errorproperty="redirect.err"
                output="redirect.out" outputproperty="redirect.out">
              <arg value="-f"/>
              <fileset refid="xyz" />
          </apply>
      </target>
  
      <target name="redirect7" depends="init,xyz" if="sed.can.run">
          <apply executable="sed" inputstring="x y z${line.separator}"
                 error="redirect.err" output="redirect.out"
                 outputproperty="redirect.out">
              <arg value="-f"/>
              <fileset refid="xyz" />
          </apply>
      </target>
      
      <target name="redirect7b" depends="redirect7">
          <echo>redirect.out=${redirect.out}</echo>
      </target>
  
      <target name="cleanup">
          <delete>
              <fileset dir="${basedir}" includes="redirect.*" />
              <fileset refid="xyz" />
          </delete>
      </target>
  </project>
  
  
  
  1.1                  ant/src/etc/testcases/taskdefs/exec/parrot.sh
  
  Index: parrot.sh
  ===================================================================
  # Copyright (c) 2004 The Apache Software Foundation.  All rights reserved.
  for arg in $@ ; do
        echo $arg out
        sleep 1
        echo $arg err>&2
  done
  
  
  
  1.11      +125 -3    
ant/src/testcases/org/apache/tools/ant/taskdefs/ExecTaskTest.java
  
  Index: ExecTaskTest.java
  ===================================================================
  RCS file: 
/home/cvs/ant/src/testcases/org/apache/tools/ant/taskdefs/ExecTaskTest.java,v
  retrieving revision 1.10
  retrieving revision 1.11
  diff -u -r1.10 -r1.11
  --- ExecTaskTest.java 9 Feb 2004 21:05:41 -0000       1.10
  +++ ExecTaskTest.java 16 Feb 2004 19:39:13 -0000      1.11
  @@ -1,5 +1,5 @@
   /*
  - * Copyright  2003-2004 The Apache Software Foundation
  + * Copyright  2003-2004 The Apache Software Foundation.
    *
    *  Licensed under the Apache License, Version 2.0 (the "License");
    *  you may not use this file except in compliance with the License.
  @@ -21,13 +21,16 @@
   import org.apache.tools.ant.util.FileUtils;
   
   import java.io.File;
  +import java.io.FileReader;
  +import java.io.IOException;
   import java.io.OutputStream;
   import java.util.GregorianCalendar;
   
  -import junit.framework.Assert;
  +import junit.framework.ComparisonFailure;
   
   /**
    * @author <a href="[EMAIL PROTECTED]">Antoine Levy-Lambert</a>
  + * @author Matt Benson
    */
   public class ExecTaskTest extends BuildFileTest {
       private static final String BUILD_PATH = 
"src/etc/testcases/taskdefs/exec/";
  @@ -49,9 +52,128 @@
       }
   
       public void tearDown() {
  -        if (logFile != null) {
  +        executeTarget("cleanup");
  +        if (logFile != null && logFile.exists()) {
               logFile.delete();
           }
  +    }
  +
  +    public void testNoRedirect() {
  +        expectLog("no-redirect", getProject().getProperty("ant.file") + " 
out"
  +            + getProject().getProperty("ant.file") + " err");
  +    }
  +
  +    public void testRedirect1() {
  +        executeTarget("redirect1");
  +        String expectedOut = getProject().getProperty("ant.file") + " out\n"
  +            + getProject().getProperty("ant.file") + " err\n";
  +
  +        String actualOut = null;
  +        try {
  +            actualOut = FileUtils.newFileUtils().readFully(new FileReader(
  +                getProject().resolveFile("redirect.out")));
  +        } catch (IOException eyeOhEx) {
  +        }
  +        assertEquals("unexpected output", expectedOut, actualOut);
  +    }
  +
  +    public void testRedirect2() {
  +        executeTarget("redirect2");
  +        String expectedOut = getProject().getProperty("ant.file") + " out\n";
  +        String expectedErr = getProject().getProperty("ant.file") + " err\n";
  +
  +        String actualOut = null;
  +        String actualErr = null;
  +        try {
  +            actualOut = FileUtils.newFileUtils().readFully(new FileReader(
  +                getProject().resolveFile("redirect.out")));
  +            actualErr = FileUtils.newFileUtils().readFully(new FileReader(
  +                getProject().resolveFile("redirect.err")));
  +        } catch (IOException eyeOhEx) {
  +        }
  +        assertEquals("unexpected output", expectedOut, actualOut);
  +        assertEquals("unexpected error output", expectedErr, actualErr);
  +    }
  +
  +    public void testRedirect3() {
  +        expectLog("redirect3", getProject().getProperty("ant.file") + " 
err");
  +        String expectedOut = getProject().getProperty("ant.file") + " out\n";
  +
  +        String actualOut = null;
  +        try {
  +            actualOut = FileUtils.newFileUtils().readFully(new FileReader(
  +                getProject().resolveFile("redirect.out")));
  +        } catch (IOException eyeOhEx) {
  +        }
  +        assertEquals("unexpected output", expectedOut, actualOut);
  +        assertPropertyEquals("redirect.out", expectedOut.trim());
  +    }
  +
  +    public void testRedirect4() {
  +        executeTarget("redirect4");
  +        String expectedOut = getProject().getProperty("ant.file") + " out\n";
  +        String expectedErr = getProject().getProperty("ant.file") + " err\n";
  +
  +        String actualOut = null;
  +        String actualErr = null;
  +        try {
  +            actualOut = FileUtils.newFileUtils().readFully(new FileReader(
  +                getProject().resolveFile("redirect.out")));
  +            actualErr = FileUtils.newFileUtils().readFully(new FileReader(
  +                getProject().resolveFile("redirect.err")));
  +        } catch (IOException eyeOhEx) {
  +        }
  +        assertEquals("unexpected output", expectedOut, actualOut);
  +        assertPropertyEquals("redirect.out", expectedOut.trim());
  +        assertEquals("unexpected error output", expectedErr, actualErr);
  +        assertPropertyEquals("redirect.err", expectedErr.trim());
  +    }
  +
  +    public void testRedirect5() {
  +        testRedirect5or6("redirect5");
  +    }
  +
  +    public void testRedirect6() {
  +        testRedirect5or6("redirect6");
  +    }
  +
  +    public void testRedirect5or6(String target) {
  +        executeTarget(target);
  +
  +        String expectedOut = getProject().getProperty("ant.file") + " out\n";
  +
  +        String actualOut = null;
  +        String actualErr = null;
  +        try {
  +            actualOut = FileUtils.newFileUtils().readFully(new FileReader(
  +                getProject().resolveFile("redirect.out")));
  +            actualErr = FileUtils.newFileUtils().readFully(new FileReader(
  +                getProject().resolveFile("redirect.err")));
  +        } catch (IOException eyeOhEx) {
  +        }
  +        assertEquals("unexpected output", "3", actualOut.trim());
  +        assertEquals(getProject().getProperty("redirect.out").trim(), "3");
  +        assertEquals("unexpected error output", null, actualErr);
  +        assertPropertyEquals("redirect.err", "");
  +    }
  +
  +    public void testRedirect7() {
  +        executeTarget("redirect7");
  +
  +        String expectedOut = getProject().getProperty("ant.file") + " out\n";
  +
  +        String actualOut = null;
  +        String actualErr = null;
  +        try {
  +            actualOut = FileUtils.newFileUtils().readFully(new FileReader(
  +                getProject().resolveFile("redirect.out")));
  +            actualErr = FileUtils.newFileUtils().readFully(new FileReader(
  +                getProject().resolveFile("redirect.err")));
  +        } catch (IOException eyeOhEx) {
  +        }
  +        assertEquals("unexpected output", "3", actualOut.trim());
  +        assertEquals(getProject().getProperty("redirect.out").trim(), "3");
  +        assertEquals("unexpected error output", null, actualErr);
       }
   
       public void testspawn() {
  
  
  
  1.1                  
ant/src/testcases/org/apache/tools/ant/taskdefs/ExecuteOnTest.java
  
  Index: ExecuteOnTest.java
  ===================================================================
  /*
   * Copyright 2004 The Apache Software Foundation.
   *
   *  Licensed under the Apache License, Version 2.0 (the "License");
   *  you may not use this file except in compliance with the License.
   *  You may obtain a copy of the License at
   *
   *      http://www.apache.org/licenses/LICENSE-2.0
   *
   *  Unless required by applicable law or agreed to in writing, software
   *  distributed under the License is distributed on an "AS IS" BASIS,
   *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
   *  See the License for the specific language governing permissions and
   *  limitations under the License.
   *
   */
  
  package org.apache.tools.ant.taskdefs;
  
  import org.apache.tools.ant.*;
  import org.apache.tools.ant.util.FileUtils;
  
  import java.io.File;
  import java.io.FileReader;
  import java.io.IOException;
  import java.io.OutputStream;
  import java.util.GregorianCalendar;
  
  import junit.framework.ComparisonFailure;
  
  /**
   * @author Matt Benson
   */
  public class ExecuteOnTest extends BuildFileTest {
      private static final String BUILD_PATH = 
"src/etc/testcases/taskdefs/exec/";
      private static final String BUILD_FILE = BUILD_PATH + "apply.xml";
  //    private final int TIME_TO_WAIT = 1;
      /** maximum time allowed for the build in milliseconds */
  //    private final int MAX_BUILD_TIME = 4000;
  //    private final int SECURITY_MARGIN = 2000; // wait 2 second extras
      // the test failed with 100 ms of margin on cvs.apache.org on August 1st, 
2003
  
      public ExecuteOnTest(String name) {
          super(name);
      }
  
      public void setUp() {
          configureProject(BUILD_FILE);
      }
  
      public void tearDown() {
          executeTarget("cleanup");
      }
  
      public void testNoRedirect() {
          executeTarget("no-redirect");
          String log = getLog();
          File x = getProject().resolveFile("x");
          File y = getProject().resolveFile("y");
          File z = getProject().resolveFile("z");
          int xout = log.indexOf(x + " out");
          int yout = log.indexOf(y + " out");
          int zout = log.indexOf(z + " out");
          int xerr = log.indexOf(x + " err");
          int yerr = log.indexOf(y + " err");
          int zerr = log.indexOf(z + " err");
          assertFalse("xout < 0", xout < 0);
          assertFalse("yout < 0", yout < 0);
          assertFalse("zout < 0", zout < 0);
          assertFalse("xerr < 0", xerr < 0);
          assertFalse("yerr < 0", yerr < 0);
          assertFalse("zerr < 0", zerr < 0);
          assertFalse("yout < xout", yout < xout);
          assertFalse("zout < yout", zout < yout);
          assertFalse("yerr < xerr", yerr < xerr);
          assertFalse("zerr < yerr", zerr < yerr);
      }
  
      public void testRedirect1() {
          executeTarget("redirect1");
          String actualOut = null;
          try {
              actualOut = FileUtils.newFileUtils().readFully(new FileReader(
                  getProject().resolveFile("redirect.out")));
          } catch (IOException eyeOhEx) {
          }
          File x = getProject().resolveFile("x");
          File y = getProject().resolveFile("y");
          File z = getProject().resolveFile("z");
          int xout = actualOut.indexOf(x + " out");
          int yout = actualOut.indexOf(y + " out");
          int zout = actualOut.indexOf(z + " out");
          int xerr = actualOut.indexOf(x + " err");
          int yerr = actualOut.indexOf(y + " err");
          int zerr = actualOut.indexOf(z + " err");
          assertFalse("xout < 0", xout < 0);
          assertFalse("yout < 0", yout < 0);
          assertFalse("zout < 0", zout < 0);
          assertFalse("xerr < 0", xerr < 0);
          assertFalse("yerr < 0", yerr < 0);
          assertFalse("zerr < 0", zerr < 0);
          assertFalse("yout < xout", yout < xout);
          assertFalse("zout < yout", zout < yout);
          assertFalse("yerr < xerr", yerr < xerr);
          assertFalse("zerr < yerr", zerr < yerr);
      }
  
      public void testRedirect2() {
          executeTarget("redirect2");
          String actualOut = null;
          String actualErr = null;
          try {
              actualOut = FileUtils.newFileUtils().readFully(new FileReader(
                  getProject().resolveFile("redirect.out")));
              actualErr = FileUtils.newFileUtils().readFully(new FileReader(
                  getProject().resolveFile("redirect.err")));
          } catch (IOException eyeOhEx) {
          }
          File x = getProject().resolveFile("x");
          File y = getProject().resolveFile("y");
          File z = getProject().resolveFile("z");
          int xout = actualOut.indexOf(x + " out");
          int yout = actualOut.indexOf(y + " out");
          int zout = actualOut.indexOf(z + " out");
          int xerr = actualErr.indexOf(x + " err");
          int yerr = actualErr.indexOf(y + " err");
          int zerr = actualErr.indexOf(z + " err");
          assertFalse("xout < 0", xout < 0);
          assertFalse("yout < 0", yout < 0);
          assertFalse("zout < 0", zout < 0);
          assertFalse("xerr < 0", xerr < 0);
          assertFalse("yerr < 0", yerr < 0);
          assertFalse("zerr < 0", zerr < 0);
          assertFalse("yout < xout", yout < xout);
          assertFalse("zout < yout", zout < yout);
          assertFalse("yerr < xerr", yerr < xerr);
          assertFalse("zerr < yerr", zerr < yerr);
      }
  
      public void testRedirect3() {
          executeTarget("redirect3");
          String actualOut = null;
          try {
              actualOut = FileUtils.newFileUtils().readFully(new FileReader(
                  getProject().resolveFile("redirect.out")));
          } catch (IOException eyeOhEx) {
          }
          File x = getProject().resolveFile("x");
          File y = getProject().resolveFile("y");
          File z = getProject().resolveFile("z");
          int xout = actualOut.indexOf(x + " out");
          int yout = actualOut.indexOf(y + " out");
          int zout = actualOut.indexOf(z + " out");
          int xerr = getLog().indexOf(x + " err");
          int yerr = getLog().indexOf(y + " err");
          int zerr = getLog().indexOf(z + " err");
          assertFalse("xout < 0", xout < 0);
          assertFalse("yout < 0", yout < 0);
          assertFalse("zout < 0", zout < 0);
          assertFalse("xerr < 0", xerr < 0);
          assertFalse("yerr < 0", yerr < 0);
          assertFalse("zerr < 0", zerr < 0);
          assertFalse("yout < xout", yout < xout);
          assertFalse("zout < yout", zout < yout);
          assertFalse("yerr < xerr", yerr < xerr);
          assertFalse("zerr < yerr", zerr < yerr);
          assertPropertyEquals("redirect.out", x + " out");
      }
  
      public void testRedirect4() {
          executeTarget("redirect4");
          String actualOut = null;
          String actualErr = null;
          try {
              actualOut = FileUtils.newFileUtils().readFully(new FileReader(
                  getProject().resolveFile("redirect.out")));
              actualErr = FileUtils.newFileUtils().readFully(new FileReader(
                  getProject().resolveFile("redirect.err")));
          } catch (IOException eyeOhEx) {
          }
          File x = getProject().resolveFile("x");
          File y = getProject().resolveFile("y");
          File z = getProject().resolveFile("z");
          int xout = actualOut.indexOf(x + " out");
          int yout = actualOut.indexOf(y + " out");
          int zout = actualOut.indexOf(z + " out");
          int xerr = actualErr.indexOf(x + " err");
          int yerr = actualErr.indexOf(y + " err");
          int zerr = actualErr.indexOf(z + " err");
          assertFalse("xout < 0", xout < 0);
          assertFalse("yout < 0", yout < 0);
          assertFalse("zout < 0", zout < 0);
          assertFalse("xerr < 0", xerr < 0);
          assertFalse("yerr < 0", yerr < 0);
          assertFalse("zerr < 0", zerr < 0);
          assertFalse("yout < xout", yout < xout);
          assertFalse("zout < yout", zout < yout);
          assertFalse("yerr < xerr", yerr < xerr);
          assertFalse("zerr < yerr", zerr < yerr);
          assertPropertyEquals("redirect.out", x + " out");
          assertPropertyEquals("redirect.err", x + " err");
      }
  
      public void testRedirect5() {
          testRedirect5or6("redirect5");
      }
  
      public void testRedirect6() {
          testRedirect5or6("redirect6");
      }
  
      private void testRedirect5or6(String target) {
          executeTarget(target);
          String actualOut = null;
          String actualErr = null;
          try {
              actualOut = FileUtils.newFileUtils().readFully(new FileReader(
                  getProject().resolveFile("redirect.out")));
              actualErr = FileUtils.newFileUtils().readFully(new FileReader(
                  getProject().resolveFile("redirect.err")));
          } catch (IOException eyeOhEx) {
          }
          assertPropertyEquals("redirect.out", "blah y z");
          assertPropertyEquals("redirect.err", "");
          assertEquals("unexpected content in redirect.out",
              "blah y z\nx blah z\nx y blah\n", actualOut);
          assertEquals("unexpected content in redirect.err", null, actualErr);
      }
  
      public void testRedirect7() {
          executeTarget("redirect7");
          String actualOut = null;
          String actualErr = null;
          try {
              actualOut = FileUtils.newFileUtils().readFully(new FileReader(
                  getProject().resolveFile("redirect.out")));
              actualErr = FileUtils.newFileUtils().readFully(new FileReader(
                  getProject().resolveFile("redirect.err")));
          } catch (IOException eyeOhEx) {
          }
          assertPropertyEquals("redirect.out", "blah y z");
          assertPropertyUnset("redirect.err");
          assertEquals("unexpected content in redirect.out",
              "x y blah\n", actualOut);
          assertEquals("unexpected content in redirect.err", null, actualErr);
      }
  
  }
  
  
  

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

Reply via email to