Author: vsiveton
Date: Fri May 29 13:40:51 2009
New Revision: 779968
URL: http://svn.apache.org/viewvc?rev=779968&view=rev
Log:
o validate the rendering pages
Modified:
maven/doxia/doxia-sitetools/trunk/doxia-site-renderer/pom.xml
maven/doxia/doxia-sitetools/trunk/doxia-site-renderer/src/test/java/org/apache/maven/doxia/siterenderer/DefaultSiteRendererTest.java
Modified: maven/doxia/doxia-sitetools/trunk/doxia-site-renderer/pom.xml
URL:
http://svn.apache.org/viewvc/maven/doxia/doxia-sitetools/trunk/doxia-site-renderer/pom.xml?rev=779968&r1=779967&r2=779968&view=diff
==============================================================================
--- maven/doxia/doxia-sitetools/trunk/doxia-site-renderer/pom.xml (original)
+++ maven/doxia/doxia-sitetools/trunk/doxia-site-renderer/pom.xml Fri May 29
13:40:51 2009
@@ -139,5 +139,14 @@
<artifactId>commons-collections</artifactId>
<version>3.2</version>
</dependency>
+
+ <!-- test -->
+ <dependency>
+ <groupId>org.apache.maven.doxia</groupId>
+ <artifactId>doxia-core</artifactId>
+ <version>${project.version}</version>
+ <type>test-jar</type>
+ <scope>test</scope>
+ </dependency>
</dependencies>
</project>
Modified:
maven/doxia/doxia-sitetools/trunk/doxia-site-renderer/src/test/java/org/apache/maven/doxia/siterenderer/DefaultSiteRendererTest.java
URL:
http://svn.apache.org/viewvc/maven/doxia/doxia-sitetools/trunk/doxia-site-renderer/src/test/java/org/apache/maven/doxia/siterenderer/DefaultSiteRendererTest.java?rev=779968&r1=779967&r2=779968&view=diff
==============================================================================
---
maven/doxia/doxia-sitetools/trunk/doxia-site-renderer/src/test/java/org/apache/maven/doxia/siterenderer/DefaultSiteRendererTest.java
(original)
+++
maven/doxia/doxia-sitetools/trunk/doxia-site-renderer/src/test/java/org/apache/maven/doxia/siterenderer/DefaultSiteRendererTest.java
Fri May 29 13:40:51 2009
@@ -22,19 +22,24 @@
import java.io.File;
import java.io.FileOutputStream;
import java.io.FileReader;
+import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.io.Reader;
import java.util.HashMap;
+import java.util.Iterator;
+import java.util.List;
import java.util.Map;
import org.apache.maven.doxia.site.decoration.DecorationModel;
import org.apache.maven.doxia.site.decoration.io.xpp3.DecorationXpp3Reader;
+import org.apache.maven.doxia.xsd.AbstractXmlValidatorTest;
import org.codehaus.plexus.PlexusTestCase;
import org.codehaus.plexus.util.FileUtils;
import org.codehaus.plexus.util.IOUtil;
import org.codehaus.plexus.util.ReaderFactory;
+import org.codehaus.plexus.util.StringUtils;
/**
@@ -135,6 +140,11 @@
verifyMisc();
verifyDocbookPageExists();
verifyApt();
+
+ //
----------------------------------------------------------------------
+ // Validate the rendering pages
+ //
----------------------------------------------------------------------
+ validatePages();
}
/**
@@ -270,4 +280,82 @@
AptVerifier verifier = new AptVerifier();
verifier.verify( "target/output/apt.html" );
}
+
+ /**
+ * Validate the generated pages.
+ *
+ * @throws Exception if something goes wrong.
+ * @since 1.1.1
+ */
+ public void validatePages() throws Exception
+ {
+ // Need to refactor...
+ XhtmlValidatorTest validator = new XhtmlValidatorTest();
+ validator.setUp();
+ validator.testValidateFiles();
+ }
+
+ protected static class XhtmlValidatorTest
+ extends AbstractXmlValidatorTest
+ {
+ /** {...@inheritdoc} */
+ protected void setUp()
+ throws Exception
+ {
+ super.setUp();
+ }
+
+ /** {...@inheritdoc} */
+ protected void tearDown()
+ throws Exception
+ {
+ super.tearDown();
+ }
+
+ /** {...@inheritdoc} */
+ protected String[] getIncludes()
+ {
+ return new String[] { "**/*.html" };
+ }
+
+ /** {...@inheritdoc} */
+ protected String addNamespaces( String content )
+ {
+ return content;
+ }
+
+ /** {...@inheritdoc} */
+ protected Map getTestDocuments()
+ throws IOException
+ {
+ Map testDocs = new HashMap();
+
+ File dir = new File( getBasedir(), "target/output" );
+
+ List l = FileUtils.getFileNames( dir, getIncludes()[0],
FileUtils.getDefaultExcludesAsString(), true );
+ for ( Iterator it = l.iterator(); it.hasNext(); )
+ {
+ String file = it.next().toString();
+ file = StringUtils.replace( file, "\\", "/" );
+
+ Reader reader = ReaderFactory.newXmlReader( new File( file ) );
+ try
+ {
+ testDocs.put( file, IOUtil.toString( reader ) );
+ }
+ finally
+ {
+ IOUtil.close( reader );
+ }
+ }
+
+ return testDocs;
+ }
+
+ /** {...@inheritdoc} */
+ protected boolean isFailErrorMessage( String message )
+ {
+ return true;
+ }
+ }
}