craigmcc    01/08/20 15:06:23

  Modified:    digester/src/test/org/apache/commons/digester
                        RuleTestCase.java
  Log:
  Modify the new test case to parse the same input file twice in a row
  without reinitializing the Digester instance in between.
  
  Revision  Changes    Path
  1.2       +43 -24    
jakarta-commons/digester/src/test/org/apache/commons/digester/RuleTestCase.java
  
  Index: RuleTestCase.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-commons/digester/src/test/org/apache/commons/digester/RuleTestCase.java,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- RuleTestCase.java 2001/08/20 21:59:43     1.1
  +++ RuleTestCase.java 2001/08/20 22:06:23     1.2
  @@ -1,7 +1,7 @@
   /*
  - * $Header: 
/home/cvs/jakarta-commons/digester/src/test/org/apache/commons/digester/RuleTestCase.java,v
 1.1 2001/08/20 21:59:43 craigmcc Exp $
  - * $Revision: 1.1 $
  - * $Date: 2001/08/20 21:59:43 $
  + * $Header: 
/home/cvs/jakarta-commons/digester/src/test/org/apache/commons/digester/RuleTestCase.java,v
 1.2 2001/08/20 22:06:23 craigmcc Exp $
  + * $Revision: 1.2 $
  + * $Date: 2001/08/20 22:06:23 $
    *
    * ====================================================================
    *
  @@ -76,7 +76,7 @@
    * XML documents to exercise the built-in rules.</p>
    *
    * @author Craig R. McClanahan
  - * @version $Revision: 1.1 $ $Date: 2001/08/20 21:59:43 $
  + * @version $Revision: 1.2 $ $Date: 2001/08/20 22:06:23 $
    */
   
   public class RuleTestCase extends TestCase {
  @@ -233,14 +233,52 @@
           digester.addSetNext("employee/address",
                               "addAddress");
   
  -        // Parse our test input.
  +        // Parse our test input once
           Object root = null;
           try {
               root = digester.parse(getInputStream("Test1.xml"));
           } catch (Throwable t) {
               fail("Digester threw IOException: " + t);
           }
  +        validateObjectCreate3(root);
  +
  +        // Parse the same input again
  +        try {
  +            root = digester.parse(getInputStream("Test1.xml"));
  +        } catch (Throwable t) {
  +            fail("Digester threw IOException: " + t);
  +        }
  +        validateObjectCreate3(root);
  +
  +    }
  +
  +
  +    // ------------------------------------------------ Utility Support Methods
  +
  +
  +    /**
  +     * Return an appropriate InputStream for the specified test file (which
  +     * must be inside our current package.
  +     *
  +     * @param name Name of the test file we want
  +     *
  +     * @exception IOException if an input/output error occurs
  +     */
  +    protected InputStream getInputStream(String name) throws IOException {
  +
  +        return (this.getClass().getResourceAsStream
  +                ("/org/apache/commons/digester/" + name));
   
  +    }
  +
  +
  +    /**
  +     * Validate the assertions for ObjectCreateRule3.
  +     *
  +     * @param object Root object returned by <code>digester.parse()</code>
  +     */
  +    protected void validateObjectCreate3(Object root) {
  +
           // Validate the retrieved Employee
           assertNotNull("Digester returned an object", root);
           assertTrue("Digester returned an Employee",
  @@ -276,25 +314,6 @@
                        office.getState());
           assertEquals("Office zip", "OfZip",
                        office.getZipCode());
  -
  -    }
  -
  -
  -    // ------------------------------------------------ Utility Support Methods
  -
  -
  -    /**
  -     * Return an appropriate InputStream for the specified test file (which
  -     * must be inside our current package.
  -     *
  -     * @param name Name of the test file we want
  -     *
  -     * @exception IOException if an input/output error occurs
  -     */
  -    protected InputStream getInputStream(String name) throws IOException {
  -
  -        return (this.getClass().getResourceAsStream
  -                ("/org/apache/commons/digester/" + name));
   
       }
   
  
  
  

Reply via email to