You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ws.apache.org by ve...@apache.org on 2015/09/01 23:27:59 UTC
svn commit: r1700674 - in
/webservices/axiom/trunk/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/om:
./ container/
Author: veithen
Date: Tue Sep 1 21:27:59 2015
New Revision: 1700674
URL: http://svn.apache.org/r1700674
Log:
Some cleanup of the Axiom test suite.
Added:
webservices/axiom/trunk/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/om/container/OMContainerExtractor.java
- copied, changed from r1700360, webservices/axiom/trunk/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/om/container/OMContainerFactory.java
webservices/axiom/trunk/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/om/container/OMElementExtractor.java
- copied, changed from r1700360, webservices/axiom/trunk/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/om/container/OMElementFactory.java
Removed:
webservices/axiom/trunk/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/om/container/OMContainerFactory.java
webservices/axiom/trunk/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/om/container/OMElementFactory.java
Modified:
webservices/axiom/trunk/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/om/OMTestSuiteBuilder.java
webservices/axiom/trunk/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/om/container/TestGetXMLStreamReader.java
webservices/axiom/trunk/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/om/container/TestSerialize.java
Modified: webservices/axiom/trunk/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/om/OMTestSuiteBuilder.java
URL: http://svn.apache.org/viewvc/webservices/axiom/trunk/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/om/OMTestSuiteBuilder.java?rev=1700674&r1=1700673&r2=1700674&view=diff
==============================================================================
--- webservices/axiom/trunk/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/om/OMTestSuiteBuilder.java (original)
+++ webservices/axiom/trunk/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/om/OMTestSuiteBuilder.java Tue Sep 1 21:27:59 2015
@@ -34,8 +34,7 @@ import org.apache.axiom.ts.dimension.Ele
import org.apache.axiom.ts.dimension.ExpansionStrategy;
import org.apache.axiom.ts.dimension.NoNamespaceStrategy;
import org.apache.axiom.ts.dimension.serialization.SerializationStrategy;
-import org.apache.axiom.ts.om.container.OMContainerFactory;
-import org.apache.axiom.ts.om.container.OMElementFactory;
+import org.apache.axiom.ts.om.container.OMContainerExtractor;
import org.apache.axiom.ts.om.factory.CreateOMElementParentSupplier;
import org.apache.axiom.ts.om.factory.CreateOMElementVariant;
import org.apache.axiom.ts.om.sourcedelement.OMSourcedElementVariant;
@@ -46,11 +45,6 @@ import org.apache.axiom.ts.xml.StreamTyp
import org.apache.axiom.ts.xml.XMLSample;
public class OMTestSuiteBuilder extends MatrixTestSuiteBuilder {
- private static final OMContainerFactory[] containerFactories = {
- OMContainerFactory.DOCUMENT,
- new OMElementFactory(false),
- new OMElementFactory(true) };
-
private static final QName[] qnames = {
new QName("root"),
new QName("urn:test", "root", "p"),
@@ -138,18 +132,17 @@ public class OMTestSuiteBuilder extends
addTest(new org.apache.axiom.ts.om.builder.TestRootPartStreaming(metaFactory));
addTest(new org.apache.axiom.ts.om.builder.TestStandaloneConfiguration(metaFactory));
for (XMLSample file : getInstances(XMLSample.class)) {
- for (int j=0; j<containerFactories.length; j++) {
- OMContainerFactory cf = containerFactories[j];
+ for (OMContainerExtractor ce : getInstances(OMContainerExtractor.class)) {
for (BuilderFactory bf : getInstances(BuilderFactory.class)) {
- addTest(new org.apache.axiom.ts.om.container.TestGetXMLStreamReader(metaFactory, file, bf, cf, true));
- addTest(new org.apache.axiom.ts.om.container.TestGetXMLStreamReader(metaFactory, file, bf, cf, false));
+ addTest(new org.apache.axiom.ts.om.container.TestGetXMLStreamReader(metaFactory, file, bf, ce, true));
+ addTest(new org.apache.axiom.ts.om.container.TestGetXMLStreamReader(metaFactory, file, bf, ce, false));
}
// On a document containing entity references, serialization tests will only work correctly if
// the entire document is serialized (so that the DTD is available)
- if (!file.hasEntityReferences() || cf == OMContainerFactory.DOCUMENT) {
+ if (!file.hasEntityReferences() || ce == OMContainerExtractor.DOCUMENT) {
for (SerializationStrategy ss : getInstances(SerializationStrategy.class)) {
if (ss.supportsInternalSubset() || !file.hasInternalSubset()) {
- addTest(new org.apache.axiom.ts.om.container.TestSerialize(metaFactory, file, containerFactories[j], ss));
+ addTest(new org.apache.axiom.ts.om.container.TestSerialize(metaFactory, file, ce, ss));
}
}
}
Copied: webservices/axiom/trunk/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/om/container/OMContainerExtractor.java (from r1700360, webservices/axiom/trunk/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/om/container/OMContainerFactory.java)
URL: http://svn.apache.org/viewvc/webservices/axiom/trunk/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/om/container/OMContainerExtractor.java?p2=webservices/axiom/trunk/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/om/container/OMContainerExtractor.java&p1=webservices/axiom/trunk/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/om/container/OMContainerFactory.java&r1=1700360&r2=1700674&rev=1700674&view=diff
==============================================================================
--- webservices/axiom/trunk/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/om/container/OMContainerFactory.java (original)
+++ webservices/axiom/trunk/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/om/container/OMContainerExtractor.java Tue Sep 1 21:27:59 2015
@@ -24,6 +24,7 @@ import javax.xml.stream.XMLStreamReader;
import org.apache.axiom.om.OMContainer;
import org.apache.axiom.om.OMXMLParserWrapper;
+import org.apache.axiom.testing.multiton.Multiton;
import org.apache.axiom.testutils.suite.Dimension;
import org.apache.axiom.testutils.suite.MatrixTestCase;
import org.xml.sax.InputSource;
@@ -31,8 +32,8 @@ import org.xml.sax.InputSource;
/**
* Extracts an {@link OMContainer} instance from a test file.
*/
-public interface OMContainerFactory extends Dimension {
- OMContainerFactory DOCUMENT = new OMContainerFactory() {
+public abstract class OMContainerExtractor extends Multiton implements Dimension {
+ public static final OMContainerExtractor DOCUMENT = new OMContainerExtractor() {
public void addTestParameters(MatrixTestCase testCase) {
testCase.addTestParameter("container", "document");
}
@@ -50,6 +51,11 @@ public interface OMContainerFactory exte
}
};
+ public static final OMElementExtractor ELEMENT = new OMElementExtractor(false);
+ public static final OMElementExtractor ELEMENT_DETACHED = new OMElementExtractor(false);
+
+ OMContainerExtractor() {}
+
/**
* Prepare a control document that has the same content as the container returned by
* {@link #getContainer(OMXMLParserWrapper)}.
@@ -59,7 +65,7 @@ public interface OMContainerFactory exte
* @return the {@link InputSource} for the control document
* @throws Exception
*/
- InputSource getControl(InputStream testFileContent) throws Exception;
+ public abstract InputSource getControl(InputStream testFileContent) throws Exception;
/**
* Extract the {@link OMContainer} from the given test file.
@@ -67,7 +73,7 @@ public interface OMContainerFactory exte
* @param builder the builder for the test file
* @return the container
*/
- OMContainer getContainer(OMXMLParserWrapper builder);
+ public abstract OMContainer getContainer(OMXMLParserWrapper builder);
/**
* Filter the given stream so that its content matches the content of the container returned by
@@ -77,5 +83,5 @@ public interface OMContainerFactory exte
* the original stream reader representing the content of the test file
* @return the filtered stream reader
*/
- XMLStreamReader filter(XMLStreamReader reader);
+ public abstract XMLStreamReader filter(XMLStreamReader reader);
}
Copied: webservices/axiom/trunk/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/om/container/OMElementExtractor.java (from r1700360, webservices/axiom/trunk/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/om/container/OMElementFactory.java)
URL: http://svn.apache.org/viewvc/webservices/axiom/trunk/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/om/container/OMElementExtractor.java?p2=webservices/axiom/trunk/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/om/container/OMElementExtractor.java&p1=webservices/axiom/trunk/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/om/container/OMElementFactory.java&r1=1700360&r2=1700674&rev=1700674&view=diff
==============================================================================
--- webservices/axiom/trunk/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/om/container/OMElementFactory.java (original)
+++ webservices/axiom/trunk/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/om/container/OMElementExtractor.java Tue Sep 1 21:27:59 2015
@@ -34,10 +34,10 @@ import org.apache.xalan.processor.Transf
import org.w3c.dom.Document;
import org.xml.sax.InputSource;
-public class OMElementFactory implements OMContainerFactory {
+final class OMElementExtractor extends OMContainerExtractor {
private final boolean detached;
- public OMElementFactory(boolean detached) {
+ OMElementExtractor(boolean detached) {
this.detached = detached;
}
Modified: webservices/axiom/trunk/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/om/container/TestGetXMLStreamReader.java
URL: http://svn.apache.org/viewvc/webservices/axiom/trunk/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/om/container/TestGetXMLStreamReader.java?rev=1700674&r1=1700673&r2=1700674&view=diff
==============================================================================
--- webservices/axiom/trunk/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/om/container/TestGetXMLStreamReader.java (original)
+++ webservices/axiom/trunk/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/om/container/TestGetXMLStreamReader.java Tue Sep 1 21:27:59 2015
@@ -38,17 +38,17 @@ import org.xml.sax.InputSource;
*/
public class TestGetXMLStreamReader extends ConformanceTestCase {
private final BuilderFactory builderFactory;
- private final OMContainerFactory containerFactory;
+ private final OMContainerExtractor containerExtractor;
private final boolean cache;
public TestGetXMLStreamReader(OMMetaFactory metaFactory, XMLSample file,
- BuilderFactory builderFactory, OMContainerFactory containerFactory, boolean cache) {
+ BuilderFactory builderFactory, OMContainerExtractor containerExtractor, boolean cache) {
super(metaFactory, file);
this.builderFactory = builderFactory;
- this.containerFactory = containerFactory;
+ this.containerExtractor = containerExtractor;
this.cache = cache;
builderFactory.addTestParameters(this);
- containerFactory.addTestParameters(this);
+ containerExtractor.addTestParameters(this);
addTestParameter("cache", cache);
}
@@ -59,8 +59,8 @@ public class TestGetXMLStreamReader exte
try {
OMXMLParserWrapper builder = builderFactory.getBuilder(metaFactory, new InputSource(file.getUrl().toString()));
try {
- XMLStreamReader actual = containerFactory.getContainer(builder).getXMLStreamReader(cache);
- XMLStreamReaderComparator comparator = new XMLStreamReaderComparator(containerFactory.filter(expected), containerFactory.filter(actual));
+ XMLStreamReader actual = containerExtractor.getContainer(builder).getXMLStreamReader(cache);
+ XMLStreamReaderComparator comparator = new XMLStreamReaderComparator(containerExtractor.filter(expected), containerExtractor.filter(actual));
builderFactory.configureXMLStreamReaderComparator(comparator);
comparator.compare();
} finally {
Modified: webservices/axiom/trunk/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/om/container/TestSerialize.java
URL: http://svn.apache.org/viewvc/webservices/axiom/trunk/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/om/container/TestSerialize.java?rev=1700674&r1=1700673&r2=1700674&view=diff
==============================================================================
--- webservices/axiom/trunk/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/om/container/TestSerialize.java (original)
+++ webservices/axiom/trunk/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/om/container/TestSerialize.java Tue Sep 1 21:27:59 2015
@@ -37,15 +37,15 @@ import org.apache.commons.io.IOUtils;
import org.xml.sax.InputSource;
public class TestSerialize extends ConformanceTestCase {
- private final OMContainerFactory containerFactory;
+ private final OMContainerExtractor containerExtractor;
private final SerializationStrategy serializationStrategy;
public TestSerialize(OMMetaFactory metaFactory, XMLSample file,
- OMContainerFactory containerFactory, SerializationStrategy serializationStrategy) {
+ OMContainerExtractor containerExtractor, SerializationStrategy serializationStrategy) {
super(metaFactory, file);
- this.containerFactory = containerFactory;
+ this.containerExtractor = containerExtractor;
this.serializationStrategy = serializationStrategy;
- containerFactory.addTestParameters(this);
+ containerExtractor.addTestParameters(this);
serializationStrategy.addTestParameters(this);
}
@@ -53,10 +53,10 @@ public class TestSerialize extends Confo
OMXMLParserWrapper builder = metaFactory.createOMBuilder(metaFactory.getOMFactory(),
TEST_PARSER_CONFIGURATION, new InputSource(file.getUrl().toString()));
try {
- OMContainer container = containerFactory.getContainer(builder);
+ OMContainer container = containerExtractor.getContainer(builder);
// We need to clone the InputSource objects so that we can dump their contents
// if the test fails
- InputSource control[] = duplicateInputSource(containerFactory.getControl(file.getInputStream()));
+ InputSource control[] = duplicateInputSource(containerExtractor.getControl(file.getInputStream()));
XML actual = serializationStrategy.serialize(container);
try {
// Configure the InputSources such that external entities can be resolved