stephan     2003/04/09 04:12:20

  Modified:    src/test/org/apache/cocoon/components/resolver/test
                        ResolverImplTestCase.xtest
               src/test/org/apache/cocoon/generation
                        FileGeneratorTestCase.xtest
               src/test/org/apache/cocoon/transformation
                        AbstractTransformerTestCase.java
               src/test/org/apache/cocoon/xml WhitespaceFilter.java
  Log:
  Updating whitespacer filter.
  Setting log level to WARN for reducing verbosity.
  
  Revision  Changes    Path
  1.5       +1 -1      
cocoon-2.1/src/test/org/apache/cocoon/components/resolver/test/ResolverImplTestCase.xtest
  
  Index: ResolverImplTestCase.xtest
  ===================================================================
  RCS file: 
/home/cvs/cocoon-2.1/src/test/org/apache/cocoon/components/resolver/test/ResolverImplTestCase.xtest,v
  retrieving revision 1.4
  retrieving revision 1.5
  diff -u -r1.4 -r1.5
  --- ResolverImplTestCase.xtest        8 Apr 2003 18:51:03 -0000       1.4
  +++ ResolverImplTestCase.xtest        9 Apr 2003 11:12:19 -0000       1.5
  @@ -95,7 +95,7 @@
          </stream>
        </targets>
        <categories>
  -       <category name="test" log-level="DEBUG">
  +       <category name="test" log-level="WARN">
            <log-target id-ref="root"/>
          </category>
        </categories>
  
  
  
  1.5       +1 -9      
cocoon-2.1/src/test/org/apache/cocoon/generation/FileGeneratorTestCase.xtest
  
  Index: FileGeneratorTestCase.xtest
  ===================================================================
  RCS file: 
/home/cvs/cocoon-2.1/src/test/org/apache/cocoon/generation/FileGeneratorTestCase.xtest,v
  retrieving revision 1.4
  retrieving revision 1.5
  diff -u -r1.4 -r1.5
  --- FileGeneratorTestCase.xtest       8 Apr 2003 18:51:03 -0000       1.4
  +++ FileGeneratorTestCase.xtest       9 Apr 2003 11:12:20 -0000       1.5
  @@ -18,17 +18,9 @@
      </stream>
     </targets>
     <categories>
  -   <category name="test" log-level="DEBUG">
  +   <category name="test" log-level="WARN">
       <log-target id-ref="root"/>
      </category>
  -   <!-- Uncomment for ComponentManager and RoleManager debug
  -   <category name="cm" log-level="DEBUG">
  -    <log-target id-ref="root"/>
  -   </category>
  -   <category name="rm" log-level="DEBUG">
  -    <log-target id-ref="root"/>
  -   </category>
  -   -->
     </categories>
    </logkit>
   
  
  
  
  1.3       +28 -11    
cocoon-2.1/src/test/org/apache/cocoon/transformation/AbstractTransformerTestCase.java
  
  Index: AbstractTransformerTestCase.java
  ===================================================================
  RCS file: 
/home/cvs/cocoon-2.1/src/test/org/apache/cocoon/transformation/AbstractTransformerTestCase.java,v
  retrieving revision 1.2
  retrieving revision 1.3
  diff -u -r1.2 -r1.3
  --- AbstractTransformerTestCase.java  12 Mar 2003 15:02:17 -0000      1.2
  +++ AbstractTransformerTestCase.java  9 Apr 2003 11:12:20 -0000       1.3
  @@ -55,6 +55,11 @@
   import java.util.Map;
   import java.util.Vector;
   
  +import javax.xml.transform.TransformerException;
  +import javax.xml.transform.TransformerFactory;
  +import javax.xml.transform.dom.DOMSource;
  +import javax.xml.transform.stream.StreamResult;
  +
   import org.apache.avalon.excalibur.testcase.ExcaliburTestCase;
   import org.apache.avalon.framework.component.Component;
   import org.apache.avalon.framework.component.ComponentException;
  @@ -70,6 +75,7 @@
   import org.custommonkey.xmlunit.Diff;
   import org.custommonkey.xmlunit.XMLUnit;
   import org.w3c.dom.Document;
  +import org.w3c.dom.NodeList;
   import org.xml.sax.ContentHandler;
   import org.xml.sax.InputSource;
   import org.xml.sax.SAXException;
  @@ -142,8 +148,6 @@
        */
       public final void testTransformer() {
   
  -        try {
  -
           ComponentSelector selector = null;
           Transformer transformer = null;
           SourceResolver resolver = null;
  @@ -165,6 +169,8 @@
               TestStep test;
               int count = 0;
   
  +            getLogger().debug("Count of test steps: "+teststeps.size());
  +
               for (Enumeration e = teststeps.elements(); e.hasMoreElements(); 
) {
                   test = (TestStep) e.nextElement();
                   count++;
  @@ -230,9 +236,6 @@
                              (test.assertiontype>=EQUAL) &&
                              (test.assertiontype<=NOTIDENTICAL));
   
  -                // NEVER USED!
  -                //NodeList childs = 
assertiondocument.getDocumentElement().getChildNodes();
  -
                   switch (test.assertiontype) {
                       case EQUAL :
                           document.getDocumentElement().normalize();
  @@ -309,11 +312,6 @@
               if (parser!=null)
                   this.manager.release((Component) parser);
           }
  -
  -        } catch (Exception excep)
  -        {
  -          excep.printStackTrace();
  -        }
       }
   
       /**
  @@ -323,6 +321,25 @@
        * @return Diff object describing differences in documents
        */
       public final Diff compareXML(Document control, Document test) {
  +
  +        /*TransformerFactory factory = (TransformerFactory) 
TransformerFactory.newInstance();
  +        try
  +        {
  +          javax.xml.transform.Transformer serializer = 
factory.newTransformer();
  +          System.out.println("Control document:");
  +          serializer.transform(new DOMSource(control), new 
StreamResult(System.out));
  +          System.out.println();
  +
  +          serializer = factory.newTransformer();
  +          System.out.println("Test document:");
  +          serializer.transform(new DOMSource(test), new 
StreamResult(System.out));
  +          System.out.println();
  +        } 
  +        catch (TransformerException te)
  +        {
  +          te.printStackTrace();
  +        }*/
  +
           return new Diff(control, test);
       }
   
  
  
  
  1.2       +48 -26    
cocoon-2.1/src/test/org/apache/cocoon/xml/WhitespaceFilter.java
  
  Index: WhitespaceFilter.java
  ===================================================================
  RCS file: 
/home/cvs/cocoon-2.1/src/test/org/apache/cocoon/xml/WhitespaceFilter.java,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- WhitespaceFilter.java     9 Mar 2003 00:10:42 -0000       1.1
  +++ WhitespaceFilter.java     9 Apr 2003 11:12:20 -0000       1.2
  @@ -9,7 +9,7 @@
    Redistribution and use in source and binary forms, with or without modifica-
    tion, are permitted provided that the following conditions are met:
   
  - 1. Redistributions of  source code must  retain the above copyright notice,
  + 1. Redistributions of  source code must  retain the above copyright  notice,
       this list of conditions and the following disclaimer.
   
    2. Redistributions in binary form must reproduce the above copyright notice,
  @@ -17,12 +17,12 @@
       and/or other materials provided with the distribution.
   
    3. The end-user documentation included with the redistribution, if any, must
  -    include  the following  acknowledgment:  "This product includes software
  -    developed  by the  Apache Software Foundation (http://www.apache.org/)."
  -    Alternately, this  acknowledgment may  appear in the software itself, if
  +    include  the following  acknowledgment:  "This product includes  software
  +    developed  by the  Apache Software Foundation  (http://www.apache.org/)."
  +    Alternately, this  acknowledgment may  appear in the software itself,  if
       and wherever such third-party acknowledgments normally appear.
   
  - 4. The names "Apache Cocoon" and  "Apache Software Foundation" must  not be
  + 4. The names "Apache Cocoon" and  "Apache Software Foundation" must  not  be
       used to  endorse or promote  products derived from  this software without
       prior written permission. For written permission, please contact
       [EMAIL PROTECTED]
  @@ -33,7 +33,7 @@
   
    THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES,
    INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND
  - FITNESS  FOR A PARTICULAR  PURPOSE ARE  DISCLAIMED.  IN NO  EVENT SHALL THE
  + FITNESS  FOR A PARTICULAR  PURPOSE ARE  DISCLAIMED.  IN NO  EVENT SHALL  THE
    APACHE SOFTWARE  FOUNDATION  OR ITS CONTRIBUTORS  BE LIABLE FOR  ANY DIRECT,
    INDIRECT, INCIDENTAL, SPECIAL,  EXEMPLARY, OR CONSEQUENTIAL  DAMAGES (INCLU-
    DING, BUT NOT LIMITED TO, PROCUREMENT  OF SUBSTITUTE GOODS OR SERVICES; LOSS
  @@ -52,6 +52,7 @@
   
   import org.apache.cocoon.xml.AbstractXMLPipe;
   
  +import org.xml.sax.Attributes;
   import org.xml.sax.ContentHandler;
   import org.xml.sax.SAXException;
   
  @@ -62,8 +63,8 @@
    * @author <a href="mailto:[EMAIL PROTECTED]">Stephan Michels</a>
    * @version CVS $Id$
    */
  -public class WhitespaceFilter extends AbstractXMLPipe
  -{
  +public class WhitespaceFilter extends AbstractXMLPipe {
  +    private StringBuffer buffer = null;
   
       /**
        * Create a new WhitespaceFilter.
  @@ -81,28 +82,18 @@
        * @param start The start position in the array.
        * @param len The number of characters to read from the array.
        *
  -     * @throws SAXException   
  +     * @throws SAXException
        */
       public void characters(char c[], int start, int len) throws SAXException 
{
           if (contentHandler==null) {
               return;
           }
   
  -        for (int i = start; i<start+len; i++)
  -            if ( !Character.isWhitespace(c[i])) {
  -                StringBuffer buffer = new StringBuffer();
  -
  -                for (int j = i; j<start+len; j++)
  -                    if ((c[j]!='\n') && (c[j]!='\r')) {
  -                        buffer.append(c[j]);
  -                    }
  -                if (buffer.length()>0) {
  -                    
contentHandler.characters(buffer.toString().toCharArray(),
  -                                              0, buffer.length());
  -                }
  -                return;
  -            }
  -        // otherwise ignore characters
  +        if (buffer==null) {
  +            buffer = new StringBuffer();
  +        }
  +
  +        buffer.append(c, start, len);
       }
   
       /**
  @@ -112,10 +103,41 @@
        * @param start The start position in the array.
        * @param len The number of characters to read from the array.
        *
  -     * @throws SAXException   
  +     * @throws SAXException
        */
       public void ignorableWhitespace(char c[], int start,
                                       int len) throws SAXException {
           // ignore
  +    }
  +
  +    /**
  +   * Receive notification of the beginning of an element.
  +   *
  +   * @param namespaceURI
  +   * @param localName
  +   * @param qName
  +   * @param atts
  +   *
  +   * @throws SAXException
  +   */
  +    public void startElement(String namespaceURI, String localName,
  +                             String qName,
  +                             Attributes atts) throws SAXException {
  +        if (buffer!=null) {
  +            String text = buffer.toString();
  +
  +            text = text.replace('\n', ' ');
  +            text = text.replace('\r', ' ');
  +            text = text.trim();
  +
  +            if (text.length()>0) {
  +                contentHandler.characters(text.toCharArray(), 0,
  +                                          text.length());
  +            }
  +
  +            buffer = null;
  +        }
  +
  +        contentHandler.startElement(namespaceURI, localName, qName, atts);
       }
   }
  
  
  

Reply via email to