This is an automated email from the ASF dual-hosted git repository.

veithen pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/ws-axiom.git


The following commit(s) were added to refs/heads/master by this push:
     new cdd00c63d Decouple Dimension from MatrixTestCase by introducing 
TestParameterTarget interface
cdd00c63d is described below

commit cdd00c63d21458b85b7b93281b95b9a290ade4ed
Author: Andreas Veithen-Knowles <[email protected]>
AuthorDate: Sun Feb 22 17:42:02 2026 +0000

    Decouple Dimension from MatrixTestCase by introducing TestParameterTarget 
interface
    
    Extract a TestParameterTarget interface from MatrixTestCase with the
    addTestParameter methods. Change Dimension.addTestParameters to accept
    TestParameterTarget instead of MatrixTestCase, enabling Dimension
    implementations to be reused with other test tree structures such as the
    proposed MatrixTestContainer.
---
 .../src/test/java/org/apache/axiom/blob/suite/State.java     |  4 ++--
 .../org/apache/axiom/ts/dimension/AddAttributeStrategy.java  |  6 +++---
 .../java/org/apache/axiom/ts/dimension/BuilderFactory.java   |  4 ++--
 .../org/apache/axiom/ts/dimension/DOMBuilderFactory.java     |  4 ++--
 .../java/org/apache/axiom/ts/dimension/ElementContext.java   |  8 ++++----
 .../org/apache/axiom/ts/dimension/ExpansionStrategy.java     |  8 ++++----
 .../org/apache/axiom/ts/dimension/NoNamespaceStrategy.java   |  8 ++++----
 .../org/apache/axiom/ts/dimension/SAXBuilderFactory.java     |  4 ++--
 .../ts/dimension/serialization/SerializeFromSAXSource.java   |  4 ++--
 .../serialization/SerializeFromXMLStreamReader.java          |  4 ++--
 .../ts/dimension/serialization/SerializeToOutputStream.java  |  4 ++--
 .../axiom/ts/dimension/serialization/SerializeToWriter.java  |  4 ++--
 .../dimension/serialization/SerializeToXMLStreamWriter.java  |  4 ++--
 .../apache/axiom/ts/om/container/OMContainerExtractor.java   |  4 ++--
 .../org/apache/axiom/ts/om/container/OMContainerFactory.java |  6 +++---
 .../org/apache/axiom/ts/om/container/OMElementExtractor.java |  4 ++--
 .../axiom/ts/om/sourcedelement/push/CloseScenario.java       |  4 ++--
 .../om/sourcedelement/push/GetNamespaceContextScenario.java  |  4 ++--
 .../push/WriteAttributeAutoPrefixScenario.java               |  4 ++--
 .../push/WriteAttributeNamespaceUnawareScenario.java         |  4 ++--
 .../ts/om/sourcedelement/push/WriteBlobProviderScenario.java |  4 ++--
 .../axiom/ts/om/sourcedelement/push/WriteBlobScenario.java   |  4 ++--
 .../axiom/ts/om/sourcedelement/push/WriteCDataScenario.java  |  4 ++--
 .../push/WriteCharactersCharArrayScenario.java               |  4 ++--
 .../ts/om/sourcedelement/push/WriteCommentScenario.java      |  4 ++--
 .../push/WriteEmptyElementAutoPrefixScenario.java            |  4 ++--
 .../push/WriteEmptyElementNamespaceUnawareScenario.java      |  4 ++--
 .../ts/om/sourcedelement/push/WriteEmptyElementScenario.java |  4 ++--
 .../ts/om/sourcedelement/push/WriteEntityRefScenario.java    |  4 ++--
 .../ts/om/sourcedelement/push/WriteNamespaceScenario.java    |  4 ++--
 .../push/WriteProcessingInstruction1Scenario.java            |  4 ++--
 .../push/WriteProcessingInstruction2Scenario.java            |  4 ++--
 .../push/WriteStartElementAutoPrefixScenario.java            |  4 ++--
 .../push/WriteStartElementNamespaceUnawareScenario.java      |  4 ++--
 ...tElementWithDefaultNamespaceDeclaredOnParentScenario.java |  4 ++--
 .../sourcedelement/push/WriteStartEndDocumentScenario.java   |  4 ++--
 .../org/apache/axiom/ts/soap/SOAPElementTypeAdapter.java     |  4 ++--
 .../java/org/apache/axiom/testutils/suite/Dimension.java     |  2 +-
 .../org/apache/axiom/testutils/suite/MatrixTestCase.java     |  5 ++++-
 .../suite/{Dimension.java => TestParameterTarget.java}       | 12 ++++++++++--
 40 files changed, 97 insertions(+), 86 deletions(-)

diff --git 
a/components/blob/src/test/java/org/apache/axiom/blob/suite/State.java 
b/components/blob/src/test/java/org/apache/axiom/blob/suite/State.java
index 044c6f3e1..3ef6a602c 100644
--- a/components/blob/src/test/java/org/apache/axiom/blob/suite/State.java
+++ b/components/blob/src/test/java/org/apache/axiom/blob/suite/State.java
@@ -23,7 +23,7 @@ import java.io.OutputStream;
 
 import org.apache.axiom.blob.WritableBlob;
 import org.apache.axiom.testutils.suite.Dimension;
-import org.apache.axiom.testutils.suite.MatrixTestCase;
+import org.apache.axiom.testutils.suite.TestParameterTarget;
 
 public abstract class State implements Dimension {
     public static final State NEW =
@@ -74,7 +74,7 @@ public abstract class State implements Dimension {
     }
 
     @Override
-    public final void addTestParameters(MatrixTestCase testCase) {
+    public final void addTestParameters(TestParameterTarget testCase) {
         testCase.addTestParameter("state", name);
     }
 
diff --git 
a/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/dimension/AddAttributeStrategy.java
 
b/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/dimension/AddAttributeStrategy.java
index 0748e2173..3f21f4d89 100644
--- 
a/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/dimension/AddAttributeStrategy.java
+++ 
b/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/dimension/AddAttributeStrategy.java
@@ -24,7 +24,7 @@ import org.apache.axiom.om.OMFactory;
 import org.apache.axiom.om.OMNamespace;
 import org.apache.axiom.testing.multiton.Multiton;
 import org.apache.axiom.testutils.suite.Dimension;
-import org.apache.axiom.testutils.suite.MatrixTestCase;
+import org.apache.axiom.testutils.suite.TestParameterTarget;
 
 /**
  * Defines a strategy (in terms of usage of particular API methods) to add an 
attribute to an
@@ -38,7 +38,7 @@ public abstract class AddAttributeStrategy extends Multiton 
implements Dimension
     public static final AddAttributeStrategy FACTORY =
             new AddAttributeStrategy() {
                 @Override
-                public void addTestParameters(MatrixTestCase testCase) {
+                public void addTestParameters(TestParameterTarget testCase) {
                     testCase.addTestParameter("addAttribute", "factory");
                 }
 
@@ -56,7 +56,7 @@ public abstract class AddAttributeStrategy extends Multiton 
implements Dimension
     public static final AddAttributeStrategy DIRECT =
             new AddAttributeStrategy() {
                 @Override
-                public void addTestParameters(MatrixTestCase testCase) {
+                public void addTestParameters(TestParameterTarget testCase) {
                     testCase.addTestParameter("addAttribute", "direct");
                 }
 
diff --git 
a/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/dimension/BuilderFactory.java
 
b/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/dimension/BuilderFactory.java
index 4fcc5903c..bad6edf71 100644
--- 
a/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/dimension/BuilderFactory.java
+++ 
b/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/dimension/BuilderFactory.java
@@ -28,7 +28,7 @@ import org.apache.axiom.testing.multiton.Instances;
 import org.apache.axiom.testing.multiton.Multiton;
 import org.apache.axiom.testutils.stax.XMLStreamReaderComparator;
 import org.apache.axiom.testutils.suite.Dimension;
-import org.apache.axiom.testutils.suite.MatrixTestCase;
+import org.apache.axiom.testutils.suite.TestParameterTarget;
 import org.apache.axiom.ts.AxiomTestCase;
 import org.apache.axiom.ts.jaxp.dom.DOMImplementation;
 import org.apache.axiom.ts.jaxp.sax.SAXImplementation;
@@ -52,7 +52,7 @@ public abstract class BuilderFactory extends Multiton 
implements Dimension {
                         XMLStreamReaderComparator comparator) {}
 
                 @Override
-                public void addTestParameters(MatrixTestCase testCase) {
+                public void addTestParameters(TestParameterTarget testCase) {
                     testCase.addTestParameter("source", "parser");
                 }
 
diff --git 
a/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/dimension/DOMBuilderFactory.java
 
b/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/dimension/DOMBuilderFactory.java
index a7c1639aa..6c83952fb 100644
--- 
a/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/dimension/DOMBuilderFactory.java
+++ 
b/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/dimension/DOMBuilderFactory.java
@@ -22,7 +22,7 @@ import org.apache.axiom.om.OMMetaFactory;
 import org.apache.axiom.om.OMXMLBuilderFactory;
 import org.apache.axiom.om.OMXMLParserWrapper;
 import org.apache.axiom.testutils.stax.XMLStreamReaderComparator;
-import org.apache.axiom.testutils.suite.MatrixTestCase;
+import org.apache.axiom.testutils.suite.TestParameterTarget;
 import org.apache.axiom.ts.jaxp.dom.DOMImplementation;
 import org.xml.sax.InputSource;
 
@@ -53,7 +53,7 @@ final class DOMBuilderFactory extends BuilderFactory {
     }
 
     @Override
-    public void addTestParameters(MatrixTestCase testCase) {
+    public void addTestParameters(TestParameterTarget testCase) {
         testCase.addTestParameter("source", implementation.getName() + "-dom");
     }
 
diff --git 
a/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/dimension/ElementContext.java
 
b/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/dimension/ElementContext.java
index 3ad04e1c2..b19bd1a43 100644
--- 
a/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/dimension/ElementContext.java
+++ 
b/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/dimension/ElementContext.java
@@ -31,7 +31,7 @@ import org.apache.axiom.om.OMElement;
 import org.apache.axiom.om.OMXMLBuilderFactory;
 import org.apache.axiom.testing.multiton.Multiton;
 import org.apache.axiom.testutils.suite.Dimension;
-import org.apache.axiom.testutils.suite.MatrixTestCase;
+import org.apache.axiom.testutils.suite.TestParameterTarget;
 import org.apache.axiom.ts.jaxp.dom.DOMImplementation;
 import org.junit.Assert;
 import org.w3c.dom.Document;
@@ -47,7 +47,7 @@ public abstract class ElementContext extends Multiton 
implements Dimension {
     public static final ElementContext ORPHAN =
             new ElementContext() {
                 @Override
-                public void addTestParameters(MatrixTestCase testCase) {
+                public void addTestParameters(TestParameterTarget testCase) {
                     testCase.addTestParameter("container", "none");
                 }
 
@@ -66,7 +66,7 @@ public abstract class ElementContext extends Multiton 
implements Dimension {
     public static final ElementContext ELEMENT =
             new ElementContext() {
                 @Override
-                public void addTestParameters(MatrixTestCase testCase) {
+                public void addTestParameters(TestParameterTarget testCase) {
                     testCase.addTestParameter("container", "element");
                     testCase.addTestParameter("complete", true);
                 }
@@ -98,7 +98,7 @@ public abstract class ElementContext extends Multiton 
implements Dimension {
     public static final ElementContext INCOMPLETE_ELEMENT =
             new ElementContext() {
                 @Override
-                public void addTestParameters(MatrixTestCase testCase) {
+                public void addTestParameters(TestParameterTarget testCase) {
                     testCase.addTestParameter("container", "element");
                     testCase.addTestParameter("complete", "false");
                 }
diff --git 
a/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/dimension/ExpansionStrategy.java
 
b/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/dimension/ExpansionStrategy.java
index 046acbcf9..cc1d4faac 100644
--- 
a/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/dimension/ExpansionStrategy.java
+++ 
b/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/dimension/ExpansionStrategy.java
@@ -25,7 +25,7 @@ import org.apache.axiom.om.ds.AbstractPullOMDataSource;
 import org.apache.axiom.om.ds.AbstractPushOMDataSource;
 import org.apache.axiom.testing.multiton.Multiton;
 import org.apache.axiom.testutils.suite.Dimension;
-import org.apache.axiom.testutils.suite.MatrixTestCase;
+import org.apache.axiom.testutils.suite.TestParameterTarget;
 import org.apache.axiom.ts.dimension.serialization.SerializationStrategy;
 import org.junit.Assert;
 
@@ -38,7 +38,7 @@ public abstract class ExpansionStrategy extends Multiton 
implements Dimension {
     public static final ExpansionStrategy DONT_EXPAND =
             new ExpansionStrategy() {
                 @Override
-                public void addTestParameters(MatrixTestCase testCase) {
+                public void addTestParameters(TestParameterTarget testCase) {
                     testCase.addTestParameter("expand", "no");
                 }
 
@@ -76,7 +76,7 @@ public abstract class ExpansionStrategy extends Multiton 
implements Dimension {
     public static final ExpansionStrategy PARTIAL =
             new ExpansionStrategy() {
                 @Override
-                public void addTestParameters(MatrixTestCase testCase) {
+                public void addTestParameters(TestParameterTarget testCase) {
                     testCase.addTestParameter("expand", "partially");
                 }
 
@@ -110,7 +110,7 @@ public abstract class ExpansionStrategy extends Multiton 
implements Dimension {
     public static final ExpansionStrategy FULL =
             new ExpansionStrategy() {
                 @Override
-                public void addTestParameters(MatrixTestCase testCase) {
+                public void addTestParameters(TestParameterTarget testCase) {
                     testCase.addTestParameter("expand", "fully");
                 }
 
diff --git 
a/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/dimension/NoNamespaceStrategy.java
 
b/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/dimension/NoNamespaceStrategy.java
index 63d9d4183..8faebd757 100644
--- 
a/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/dimension/NoNamespaceStrategy.java
+++ 
b/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/dimension/NoNamespaceStrategy.java
@@ -22,13 +22,13 @@ import org.apache.axiom.om.OMFactory;
 import org.apache.axiom.om.OMNamespace;
 import org.apache.axiom.testing.multiton.Multiton;
 import org.apache.axiom.testutils.suite.Dimension;
-import org.apache.axiom.testutils.suite.MatrixTestCase;
+import org.apache.axiom.testutils.suite.TestParameterTarget;
 
 public abstract class NoNamespaceStrategy extends Multiton implements 
Dimension {
     public static final NoNamespaceStrategy NULL =
             new NoNamespaceStrategy() {
                 @Override
-                public void addTestParameters(MatrixTestCase testCase) {
+                public void addTestParameters(TestParameterTarget testCase) {
                     testCase.addTestParameter("ns", "null");
                 }
 
@@ -41,7 +41,7 @@ public abstract class NoNamespaceStrategy extends Multiton 
implements Dimension
     public static final NoNamespaceStrategy NULL_PREFIX =
             new NoNamespaceStrategy() {
                 @Override
-                public void addTestParameters(MatrixTestCase testCase) {
+                public void addTestParameters(TestParameterTarget testCase) {
                     testCase.addTestParameter("ns", "nullPrefix");
                 }
 
@@ -54,7 +54,7 @@ public abstract class NoNamespaceStrategy extends Multiton 
implements Dimension
     public static final NoNamespaceStrategy EMPTY =
             new NoNamespaceStrategy() {
                 @Override
-                public void addTestParameters(MatrixTestCase testCase) {
+                public void addTestParameters(TestParameterTarget testCase) {
                     testCase.addTestParameter("ns", "empty");
                 }
 
diff --git 
a/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/dimension/SAXBuilderFactory.java
 
b/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/dimension/SAXBuilderFactory.java
index 5eed1a5e0..fd5fb6e44 100644
--- 
a/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/dimension/SAXBuilderFactory.java
+++ 
b/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/dimension/SAXBuilderFactory.java
@@ -26,7 +26,7 @@ import org.apache.axiom.om.OMMetaFactory;
 import org.apache.axiom.om.OMXMLBuilderFactory;
 import org.apache.axiom.om.OMXMLParserWrapper;
 import org.apache.axiom.testutils.stax.XMLStreamReaderComparator;
-import org.apache.axiom.testutils.suite.MatrixTestCase;
+import org.apache.axiom.testutils.suite.TestParameterTarget;
 import org.apache.axiom.ts.jaxp.sax.SAXImplementation;
 import org.xml.sax.InputSource;
 
@@ -54,7 +54,7 @@ final class SAXBuilderFactory extends BuilderFactory {
     }
 
     @Override
-    public void addTestParameters(MatrixTestCase testCase) {
+    public void addTestParameters(TestParameterTarget testCase) {
         testCase.addTestParameter("source", implementation.getName() + "-sax");
     }
 
diff --git 
a/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/dimension/serialization/SerializeFromSAXSource.java
 
b/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/dimension/serialization/SerializeFromSAXSource.java
index c541983fb..c0a6e3685 100644
--- 
a/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/dimension/serialization/SerializeFromSAXSource.java
+++ 
b/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/dimension/serialization/SerializeFromSAXSource.java
@@ -24,7 +24,7 @@ import javax.xml.transform.OutputKeys;
 import javax.xml.transform.sax.SAXSource;
 
 import org.apache.axiom.om.OMContainer;
-import org.apache.axiom.testutils.suite.MatrixTestCase;
+import org.apache.axiom.testutils.suite.TestParameterTarget;
 import org.xml.sax.XMLReader;
 
 /**
@@ -39,7 +39,7 @@ public class SerializeFromSAXSource extends 
SerializationStrategy {
     }
 
     @Override
-    public void addTestParameters(MatrixTestCase testCase) {
+    public void addTestParameters(TestParameterTarget testCase) {
         testCase.addTestParameter("serializationStrategy", "SAXSource");
         testCase.addTestParameter("cache", cache);
     }
diff --git 
a/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/dimension/serialization/SerializeFromXMLStreamReader.java
 
b/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/dimension/serialization/SerializeFromXMLStreamReader.java
index 7cd48582e..e6a6fee6a 100644
--- 
a/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/dimension/serialization/SerializeFromXMLStreamReader.java
+++ 
b/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/dimension/serialization/SerializeFromXMLStreamReader.java
@@ -23,7 +23,7 @@ import java.io.StringWriter;
 import org.apache.axiom.om.OMContainer;
 import org.apache.axiom.om.OMXMLBuilderFactory;
 import org.apache.axiom.om.OMXMLParserWrapper;
-import org.apache.axiom.testutils.suite.MatrixTestCase;
+import org.apache.axiom.testutils.suite.TestParameterTarget;
 
 /**
  * Serializes an {@link OMContainer} by processing the result of {@link
@@ -37,7 +37,7 @@ public class SerializeFromXMLStreamReader extends 
SerializationStrategy {
     }
 
     @Override
-    public void addTestParameters(MatrixTestCase testCase) {
+    public void addTestParameters(TestParameterTarget testCase) {
         testCase.addTestParameter("serializationStrategy", "XMLStreamReader");
         testCase.addTestParameter("cache", cache);
     }
diff --git 
a/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/dimension/serialization/SerializeToOutputStream.java
 
b/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/dimension/serialization/SerializeToOutputStream.java
index bf77bb2e9..36a47cb4c 100644
--- 
a/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/dimension/serialization/SerializeToOutputStream.java
+++ 
b/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/dimension/serialization/SerializeToOutputStream.java
@@ -22,7 +22,7 @@ import java.io.ByteArrayOutputStream;
 import java.io.OutputStream;
 
 import org.apache.axiom.om.OMContainer;
-import org.apache.axiom.testutils.suite.MatrixTestCase;
+import org.apache.axiom.testutils.suite.TestParameterTarget;
 
 /** Serializes an {@link OMContainer} using {@link 
OMContainer#serialize(OutputStream, boolean)}. */
 public class SerializeToOutputStream extends SerializationStrategy {
@@ -33,7 +33,7 @@ public class SerializeToOutputStream extends 
SerializationStrategy {
     }
 
     @Override
-    public void addTestParameters(MatrixTestCase testCase) {
+    public void addTestParameters(TestParameterTarget testCase) {
         testCase.addTestParameter("serializationStrategy", "OutputStream");
         testCase.addTestParameter("cache", cache);
     }
diff --git 
a/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/dimension/serialization/SerializeToWriter.java
 
b/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/dimension/serialization/SerializeToWriter.java
index 8d6808e13..1bfb85663 100644
--- 
a/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/dimension/serialization/SerializeToWriter.java
+++ 
b/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/dimension/serialization/SerializeToWriter.java
@@ -22,7 +22,7 @@ import java.io.StringWriter;
 import java.io.Writer;
 
 import org.apache.axiom.om.OMContainer;
-import org.apache.axiom.testutils.suite.MatrixTestCase;
+import org.apache.axiom.testutils.suite.TestParameterTarget;
 
 /** Serializes an {@link OMContainer} using {@link 
OMContainer#serialize(Writer, boolean)}. */
 public class SerializeToWriter extends SerializationStrategy {
@@ -33,7 +33,7 @@ public class SerializeToWriter extends SerializationStrategy {
     }
 
     @Override
-    public void addTestParameters(MatrixTestCase testCase) {
+    public void addTestParameters(TestParameterTarget testCase) {
         testCase.addTestParameter("serializationStrategy", "Writer");
         testCase.addTestParameter("cache", cache);
     }
diff --git 
a/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/dimension/serialization/SerializeToXMLStreamWriter.java
 
b/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/dimension/serialization/SerializeToXMLStreamWriter.java
index c0d925c71..69905782c 100644
--- 
a/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/dimension/serialization/SerializeToXMLStreamWriter.java
+++ 
b/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/dimension/serialization/SerializeToXMLStreamWriter.java
@@ -25,7 +25,7 @@ import javax.xml.stream.XMLStreamWriter;
 import org.apache.axiom.core.stream.stax.StAX;
 import org.apache.axiom.om.OMContainer;
 import org.apache.axiom.om.OMDocument;
-import org.apache.axiom.testutils.suite.MatrixTestCase;
+import org.apache.axiom.testutils.suite.TestParameterTarget;
 
 /**
  * Serializes an {@link OMContainer} using {@link 
OMContainer#serialize(XMLStreamWriter)} or {@link
@@ -39,7 +39,7 @@ public class SerializeToXMLStreamWriter extends 
SerializationStrategy {
     }
 
     @Override
-    public void addTestParameters(MatrixTestCase testCase) {
+    public void addTestParameters(TestParameterTarget testCase) {
         testCase.addTestParameter("serializationStrategy", "XMLStreamWriter");
         testCase.addTestParameter("cache", cache);
     }
diff --git 
a/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/om/container/OMContainerExtractor.java
 
b/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/om/container/OMContainerExtractor.java
index ae8bfa470..be0607786 100644
--- 
a/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/om/container/OMContainerExtractor.java
+++ 
b/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/om/container/OMContainerExtractor.java
@@ -26,7 +26,7 @@ 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.apache.axiom.testutils.suite.TestParameterTarget;
 import org.xml.sax.InputSource;
 
 /** Extracts an {@link OMContainer} instance from a test file. */
@@ -34,7 +34,7 @@ public abstract class OMContainerExtractor extends Multiton 
implements Dimension
     public static final OMContainerExtractor DOCUMENT =
             new OMContainerExtractor() {
                 @Override
-                public void addTestParameters(MatrixTestCase testCase) {
+                public void addTestParameters(TestParameterTarget testCase) {
                     testCase.addTestParameter("container", "document");
                 }
 
diff --git 
a/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/om/container/OMContainerFactory.java
 
b/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/om/container/OMContainerFactory.java
index 23c02de4c..683d50a18 100644
--- 
a/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/om/container/OMContainerFactory.java
+++ 
b/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/om/container/OMContainerFactory.java
@@ -22,13 +22,13 @@ import org.apache.axiom.om.OMContainer;
 import org.apache.axiom.om.OMFactory;
 import org.apache.axiom.testing.multiton.Multiton;
 import org.apache.axiom.testutils.suite.Dimension;
-import org.apache.axiom.testutils.suite.MatrixTestCase;
+import org.apache.axiom.testutils.suite.TestParameterTarget;
 
 public abstract class OMContainerFactory extends Multiton implements Dimension 
{
     public static final OMContainerFactory DOCUMENT =
             new OMContainerFactory() {
                 @Override
-                public void addTestParameters(MatrixTestCase testCase) {
+                public void addTestParameters(TestParameterTarget testCase) {
                     testCase.addTestParameter("container", "document");
                 }
 
@@ -41,7 +41,7 @@ public abstract class OMContainerFactory extends Multiton 
implements Dimension {
     public static final OMContainerFactory ELEMENT =
             new OMContainerFactory() {
                 @Override
-                public void addTestParameters(MatrixTestCase testCase) {
+                public void addTestParameters(TestParameterTarget testCase) {
                     testCase.addTestParameter("container", "element");
                 }
 
diff --git 
a/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/om/container/OMElementExtractor.java
 
b/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/om/container/OMElementExtractor.java
index 1c3db0c66..df70e637e 100644
--- 
a/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/om/container/OMElementExtractor.java
+++ 
b/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/om/container/OMElementExtractor.java
@@ -28,7 +28,7 @@ import javax.xml.transform.stream.StreamResult;
 
 import org.apache.axiom.om.OMContainer;
 import org.apache.axiom.om.OMXMLParserWrapper;
-import org.apache.axiom.testutils.suite.MatrixTestCase;
+import org.apache.axiom.testutils.suite.TestParameterTarget;
 import org.apache.axiom.ts.jaxp.dom.DOMImplementation;
 import org.apache.axiom.ts.jaxp.xslt.XSLTImplementation;
 import org.w3c.dom.Document;
@@ -42,7 +42,7 @@ final class OMElementExtractor extends OMContainerExtractor {
     }
 
     @Override
-    public void addTestParameters(MatrixTestCase testCase) {
+    public void addTestParameters(TestParameterTarget testCase) {
         testCase.addTestParameter("container", "element");
         testCase.addTestParameter("detached", detached);
     }
diff --git 
a/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/om/sourcedelement/push/CloseScenario.java
 
b/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/om/sourcedelement/push/CloseScenario.java
index 10d09277d..a55c0fc58 100644
--- 
a/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/om/sourcedelement/push/CloseScenario.java
+++ 
b/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/om/sourcedelement/push/CloseScenario.java
@@ -26,7 +26,7 @@ import javax.xml.stream.XMLStreamWriter;
 
 import org.apache.axiom.om.OMDataSource;
 import org.apache.axiom.om.OMElement;
-import org.apache.axiom.testutils.suite.MatrixTestCase;
+import org.apache.axiom.testutils.suite.TestParameterTarget;
 import org.junit.Assert;
 
 /**
@@ -35,7 +35,7 @@ import org.junit.Assert;
  */
 public class CloseScenario implements PushOMDataSourceScenario {
     @Override
-    public void addTestParameters(MatrixTestCase testCase) {
+    public void addTestParameters(TestParameterTarget testCase) {
         testCase.addTestParameter("scenario", "close");
     }
 
diff --git 
a/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/om/sourcedelement/push/GetNamespaceContextScenario.java
 
b/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/om/sourcedelement/push/GetNamespaceContextScenario.java
index ed64bb9c1..b8738416b 100644
--- 
a/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/om/sourcedelement/push/GetNamespaceContextScenario.java
+++ 
b/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/om/sourcedelement/push/GetNamespaceContextScenario.java
@@ -26,7 +26,7 @@ import javax.xml.stream.XMLStreamWriter;
 
 import org.apache.axiom.om.OMElement;
 import org.apache.axiom.om.OMSourcedElement;
-import org.apache.axiom.testutils.suite.MatrixTestCase;
+import org.apache.axiom.testutils.suite.TestParameterTarget;
 import org.junit.Assert;
 
 /**
@@ -35,7 +35,7 @@ import org.junit.Assert;
  */
 public class GetNamespaceContextScenario implements PushOMDataSourceScenario {
     @Override
-    public void addTestParameters(MatrixTestCase testCase) {
+    public void addTestParameters(TestParameterTarget testCase) {
         testCase.addTestParameter("scenario", "getNamespaceContext");
     }
 
diff --git 
a/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/om/sourcedelement/push/WriteAttributeAutoPrefixScenario.java
 
b/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/om/sourcedelement/push/WriteAttributeAutoPrefixScenario.java
index 5a8673e3d..b9810d003 100644
--- 
a/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/om/sourcedelement/push/WriteAttributeAutoPrefixScenario.java
+++ 
b/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/om/sourcedelement/push/WriteAttributeAutoPrefixScenario.java
@@ -27,7 +27,7 @@ import javax.xml.stream.XMLStreamWriter;
 
 import org.apache.axiom.om.OMAttribute;
 import org.apache.axiom.om.OMElement;
-import org.apache.axiom.testutils.suite.MatrixTestCase;
+import org.apache.axiom.testutils.suite.TestParameterTarget;
 import org.junit.Assert;
 
 /**
@@ -36,7 +36,7 @@ import org.junit.Assert;
  */
 public class WriteAttributeAutoPrefixScenario implements 
PushOMDataSourceScenario {
     @Override
-    public void addTestParameters(MatrixTestCase testCase) {
+    public void addTestParameters(TestParameterTarget testCase) {
         testCase.addTestParameter("scenario", "writeAttributeAutoPrefix");
     }
 
diff --git 
a/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/om/sourcedelement/push/WriteAttributeNamespaceUnawareScenario.java
 
b/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/om/sourcedelement/push/WriteAttributeNamespaceUnawareScenario.java
index 18778de71..29cdc50fd 100644
--- 
a/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/om/sourcedelement/push/WriteAttributeNamespaceUnawareScenario.java
+++ 
b/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/om/sourcedelement/push/WriteAttributeNamespaceUnawareScenario.java
@@ -26,7 +26,7 @@ import javax.xml.stream.XMLStreamException;
 import javax.xml.stream.XMLStreamWriter;
 
 import org.apache.axiom.om.OMElement;
-import org.apache.axiom.testutils.suite.MatrixTestCase;
+import org.apache.axiom.testutils.suite.TestParameterTarget;
 import org.junit.Assert;
 
 /**
@@ -34,7 +34,7 @@ import org.junit.Assert;
  */
 public class WriteAttributeNamespaceUnawareScenario implements 
PushOMDataSourceScenario {
     @Override
-    public void addTestParameters(MatrixTestCase testCase) {
+    public void addTestParameters(TestParameterTarget testCase) {
         testCase.addTestParameter("scenario", "writeAttributeNoNamespace");
     }
 
diff --git 
a/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/om/sourcedelement/push/WriteBlobProviderScenario.java
 
b/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/om/sourcedelement/push/WriteBlobProviderScenario.java
index 48a9fbf33..2b03a0266 100644
--- 
a/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/om/sourcedelement/push/WriteBlobProviderScenario.java
+++ 
b/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/om/sourcedelement/push/WriteBlobProviderScenario.java
@@ -32,7 +32,7 @@ import org.apache.axiom.om.OMElement;
 import org.apache.axiom.om.OMText;
 import org.apache.axiom.testutils.blob.RandomBlob;
 import org.apache.axiom.testutils.io.IOTestUtils;
-import org.apache.axiom.testutils.suite.MatrixTestCase;
+import org.apache.axiom.testutils.suite.TestParameterTarget;
 import org.apache.axiom.util.stax.XMLStreamWriterUtils;
 import org.junit.Assert;
 
@@ -44,7 +44,7 @@ public class WriteBlobProviderScenario implements 
PushOMDataSourceScenario {
     private final Blob blob = new RandomBlob(1024);
 
     @Override
-    public void addTestParameters(MatrixTestCase testCase) {
+    public void addTestParameters(TestParameterTarget testCase) {
         testCase.addTestParameter("scenario", "writeDataHandlerProvider");
     }
 
diff --git 
a/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/om/sourcedelement/push/WriteBlobScenario.java
 
b/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/om/sourcedelement/push/WriteBlobScenario.java
index cd35e97b1..3a3debc78 100644
--- 
a/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/om/sourcedelement/push/WriteBlobScenario.java
+++ 
b/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/om/sourcedelement/push/WriteBlobScenario.java
@@ -31,7 +31,7 @@ import org.apache.axiom.om.OMElement;
 import org.apache.axiom.om.OMText;
 import org.apache.axiom.testutils.blob.RandomBlob;
 import org.apache.axiom.testutils.io.IOTestUtils;
-import org.apache.axiom.testutils.suite.MatrixTestCase;
+import org.apache.axiom.testutils.suite.TestParameterTarget;
 import org.apache.axiom.util.stax.XMLStreamWriterUtils;
 import org.junit.Assert;
 
@@ -43,7 +43,7 @@ public class WriteBlobScenario implements 
PushOMDataSourceScenario {
     private final Blob blob = new RandomBlob(1024);
 
     @Override
-    public void addTestParameters(MatrixTestCase testCase) {
+    public void addTestParameters(TestParameterTarget testCase) {
         testCase.addTestParameter("scenario", "writeDataHandler");
     }
 
diff --git 
a/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/om/sourcedelement/push/WriteCDataScenario.java
 
b/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/om/sourcedelement/push/WriteCDataScenario.java
index 518ff0e1b..c6baba46b 100644
--- 
a/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/om/sourcedelement/push/WriteCDataScenario.java
+++ 
b/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/om/sourcedelement/push/WriteCDataScenario.java
@@ -27,12 +27,12 @@ import javax.xml.stream.XMLStreamWriter;
 import org.apache.axiom.om.OMElement;
 import org.apache.axiom.om.OMNode;
 import org.apache.axiom.om.OMText;
-import org.apache.axiom.testutils.suite.MatrixTestCase;
+import org.apache.axiom.testutils.suite.TestParameterTarget;
 import org.junit.Assert;
 
 public class WriteCDataScenario implements PushOMDataSourceScenario {
     @Override
-    public void addTestParameters(MatrixTestCase testCase) {
+    public void addTestParameters(TestParameterTarget testCase) {
         testCase.addTestParameter("scenario", "writeCData");
     }
 
diff --git 
a/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/om/sourcedelement/push/WriteCharactersCharArrayScenario.java
 
b/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/om/sourcedelement/push/WriteCharactersCharArrayScenario.java
index 2dc7bb1f9..a4b66a935 100644
--- 
a/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/om/sourcedelement/push/WriteCharactersCharArrayScenario.java
+++ 
b/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/om/sourcedelement/push/WriteCharactersCharArrayScenario.java
@@ -27,13 +27,13 @@ import javax.xml.stream.XMLStreamWriter;
 import org.apache.axiom.om.OMElement;
 import org.apache.axiom.om.OMNode;
 import org.apache.axiom.om.OMText;
-import org.apache.axiom.testutils.suite.MatrixTestCase;
+import org.apache.axiom.testutils.suite.TestParameterTarget;
 import org.junit.Assert;
 
 /** Scenario that uses {@link XMLStreamWriter#writeCharacters(char[], int, 
int)}. */
 public class WriteCharactersCharArrayScenario implements 
PushOMDataSourceScenario {
     @Override
-    public void addTestParameters(MatrixTestCase testCase) {
+    public void addTestParameters(TestParameterTarget testCase) {
         testCase.addTestParameter("scenario", "writeCharactersCharArray");
     }
 
diff --git 
a/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/om/sourcedelement/push/WriteCommentScenario.java
 
b/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/om/sourcedelement/push/WriteCommentScenario.java
index 03f4486bc..65331a609 100644
--- 
a/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/om/sourcedelement/push/WriteCommentScenario.java
+++ 
b/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/om/sourcedelement/push/WriteCommentScenario.java
@@ -27,12 +27,12 @@ import javax.xml.stream.XMLStreamWriter;
 import org.apache.axiom.om.OMComment;
 import org.apache.axiom.om.OMElement;
 import org.apache.axiom.om.OMNode;
-import org.apache.axiom.testutils.suite.MatrixTestCase;
+import org.apache.axiom.testutils.suite.TestParameterTarget;
 import org.junit.Assert;
 
 public class WriteCommentScenario implements PushOMDataSourceScenario {
     @Override
-    public void addTestParameters(MatrixTestCase testCase) {
+    public void addTestParameters(TestParameterTarget testCase) {
         testCase.addTestParameter("scenario", "writeComment");
     }
 
diff --git 
a/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/om/sourcedelement/push/WriteEmptyElementAutoPrefixScenario.java
 
b/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/om/sourcedelement/push/WriteEmptyElementAutoPrefixScenario.java
index ba7eabffc..7ae4dd90a 100644
--- 
a/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/om/sourcedelement/push/WriteEmptyElementAutoPrefixScenario.java
+++ 
b/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/om/sourcedelement/push/WriteEmptyElementAutoPrefixScenario.java
@@ -25,7 +25,7 @@ import javax.xml.stream.XMLStreamException;
 import javax.xml.stream.XMLStreamWriter;
 
 import org.apache.axiom.om.OMElement;
-import org.apache.axiom.testutils.suite.MatrixTestCase;
+import org.apache.axiom.testutils.suite.TestParameterTarget;
 import org.junit.Assert;
 
 /**
@@ -34,7 +34,7 @@ import org.junit.Assert;
  */
 public class WriteEmptyElementAutoPrefixScenario implements 
PushOMDataSourceScenario {
     @Override
-    public void addTestParameters(MatrixTestCase testCase) {
+    public void addTestParameters(TestParameterTarget testCase) {
         testCase.addTestParameter("scenario", "writeEmptyElementAutoPrefix");
     }
 
diff --git 
a/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/om/sourcedelement/push/WriteEmptyElementNamespaceUnawareScenario.java
 
b/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/om/sourcedelement/push/WriteEmptyElementNamespaceUnawareScenario.java
index 43c8aef4f..7260f60b8 100644
--- 
a/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/om/sourcedelement/push/WriteEmptyElementNamespaceUnawareScenario.java
+++ 
b/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/om/sourcedelement/push/WriteEmptyElementNamespaceUnawareScenario.java
@@ -26,7 +26,7 @@ import javax.xml.stream.XMLStreamWriter;
 
 import org.apache.axiom.om.OMDataSource;
 import org.apache.axiom.om.OMElement;
-import org.apache.axiom.testutils.suite.MatrixTestCase;
+import org.apache.axiom.testutils.suite.TestParameterTarget;
 import org.junit.Assert;
 
 /**
@@ -35,7 +35,7 @@ import org.junit.Assert;
  */
 public class WriteEmptyElementNamespaceUnawareScenario implements 
PushOMDataSourceScenario {
     @Override
-    public void addTestParameters(MatrixTestCase testCase) {
+    public void addTestParameters(TestParameterTarget testCase) {
         testCase.addTestParameter("scenario", 
"writeEmptyElementNamespaceUnaware");
     }
 
diff --git 
a/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/om/sourcedelement/push/WriteEmptyElementScenario.java
 
b/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/om/sourcedelement/push/WriteEmptyElementScenario.java
index 4e33ec52e..b77ca4bc1 100644
--- 
a/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/om/sourcedelement/push/WriteEmptyElementScenario.java
+++ 
b/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/om/sourcedelement/push/WriteEmptyElementScenario.java
@@ -25,13 +25,13 @@ import javax.xml.stream.XMLStreamException;
 import javax.xml.stream.XMLStreamWriter;
 
 import org.apache.axiom.om.OMElement;
-import org.apache.axiom.testutils.suite.MatrixTestCase;
+import org.apache.axiom.testutils.suite.TestParameterTarget;
 import org.junit.Assert;
 
 /** Scenario that uses {@link XMLStreamWriter#writeEmptyElement(String, 
String, String)}. */
 public class WriteEmptyElementScenario implements PushOMDataSourceScenario {
     @Override
-    public void addTestParameters(MatrixTestCase testCase) {
+    public void addTestParameters(TestParameterTarget testCase) {
         testCase.addTestParameter("scenario", "writeEmptyElement");
     }
 
diff --git 
a/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/om/sourcedelement/push/WriteEntityRefScenario.java
 
b/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/om/sourcedelement/push/WriteEntityRefScenario.java
index c7d66747c..25bcdf47c 100644
--- 
a/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/om/sourcedelement/push/WriteEntityRefScenario.java
+++ 
b/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/om/sourcedelement/push/WriteEntityRefScenario.java
@@ -27,13 +27,13 @@ import javax.xml.stream.XMLStreamWriter;
 import org.apache.axiom.om.OMElement;
 import org.apache.axiom.om.OMEntityReference;
 import org.apache.axiom.om.OMNode;
-import org.apache.axiom.testutils.suite.MatrixTestCase;
+import org.apache.axiom.testutils.suite.TestParameterTarget;
 import org.junit.Assert;
 
 /** Scenario that uses {@link XMLStreamWriter#writeEntityRef(String)}. */
 public class WriteEntityRefScenario implements PushOMDataSourceScenario {
     @Override
-    public void addTestParameters(MatrixTestCase testCase) {
+    public void addTestParameters(TestParameterTarget testCase) {
         testCase.addTestParameter("scenario", "writeEntityRef");
     }
 
diff --git 
a/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/om/sourcedelement/push/WriteNamespaceScenario.java
 
b/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/om/sourcedelement/push/WriteNamespaceScenario.java
index bf6af342b..a5210c244 100644
--- 
a/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/om/sourcedelement/push/WriteNamespaceScenario.java
+++ 
b/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/om/sourcedelement/push/WriteNamespaceScenario.java
@@ -27,7 +27,7 @@ import javax.xml.stream.XMLStreamWriter;
 
 import org.apache.axiom.om.OMElement;
 import org.apache.axiom.om.OMNamespace;
-import org.apache.axiom.testutils.suite.MatrixTestCase;
+import org.apache.axiom.testutils.suite.TestParameterTarget;
 import org.junit.Assert;
 
 /**
@@ -44,7 +44,7 @@ public class WriteNamespaceScenario implements 
PushOMDataSourceScenario {
     }
 
     @Override
-    public void addTestParameters(MatrixTestCase testCase) {
+    public void addTestParameters(TestParameterTarget testCase) {
         testCase.addTestParameter("scenario", "writeNamespace");
         testCase.addTestParameter("prefix", prefix);
         testCase.addTestParameter("uri", namespaceURI);
diff --git 
a/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/om/sourcedelement/push/WriteProcessingInstruction1Scenario.java
 
b/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/om/sourcedelement/push/WriteProcessingInstruction1Scenario.java
index 127f56d7c..5e9390f37 100644
--- 
a/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/om/sourcedelement/push/WriteProcessingInstruction1Scenario.java
+++ 
b/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/om/sourcedelement/push/WriteProcessingInstruction1Scenario.java
@@ -27,12 +27,12 @@ import javax.xml.stream.XMLStreamWriter;
 import org.apache.axiom.om.OMElement;
 import org.apache.axiom.om.OMNode;
 import org.apache.axiom.om.OMProcessingInstruction;
-import org.apache.axiom.testutils.suite.MatrixTestCase;
+import org.apache.axiom.testutils.suite.TestParameterTarget;
 import org.junit.Assert;
 
 public class WriteProcessingInstruction1Scenario implements 
PushOMDataSourceScenario {
     @Override
-    public void addTestParameters(MatrixTestCase testCase) {
+    public void addTestParameters(TestParameterTarget testCase) {
         testCase.addTestParameter("scenario", "writeProcessingInstruction1");
     }
 
diff --git 
a/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/om/sourcedelement/push/WriteProcessingInstruction2Scenario.java
 
b/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/om/sourcedelement/push/WriteProcessingInstruction2Scenario.java
index ebf29da2d..a1d752385 100644
--- 
a/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/om/sourcedelement/push/WriteProcessingInstruction2Scenario.java
+++ 
b/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/om/sourcedelement/push/WriteProcessingInstruction2Scenario.java
@@ -27,12 +27,12 @@ import javax.xml.stream.XMLStreamWriter;
 import org.apache.axiom.om.OMElement;
 import org.apache.axiom.om.OMNode;
 import org.apache.axiom.om.OMProcessingInstruction;
-import org.apache.axiom.testutils.suite.MatrixTestCase;
+import org.apache.axiom.testutils.suite.TestParameterTarget;
 import org.junit.Assert;
 
 public class WriteProcessingInstruction2Scenario implements 
PushOMDataSourceScenario {
     @Override
-    public void addTestParameters(MatrixTestCase testCase) {
+    public void addTestParameters(TestParameterTarget testCase) {
         testCase.addTestParameter("scenario", "writeProcessingInstruction2");
     }
 
diff --git 
a/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/om/sourcedelement/push/WriteStartElementAutoPrefixScenario.java
 
b/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/om/sourcedelement/push/WriteStartElementAutoPrefixScenario.java
index 8817eb023..ed10e9da7 100644
--- 
a/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/om/sourcedelement/push/WriteStartElementAutoPrefixScenario.java
+++ 
b/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/om/sourcedelement/push/WriteStartElementAutoPrefixScenario.java
@@ -25,7 +25,7 @@ import javax.xml.stream.XMLStreamException;
 import javax.xml.stream.XMLStreamWriter;
 
 import org.apache.axiom.om.OMElement;
-import org.apache.axiom.testutils.suite.MatrixTestCase;
+import org.apache.axiom.testutils.suite.TestParameterTarget;
 import org.junit.Assert;
 
 /**
@@ -34,7 +34,7 @@ import org.junit.Assert;
  */
 public class WriteStartElementAutoPrefixScenario implements 
PushOMDataSourceScenario {
     @Override
-    public void addTestParameters(MatrixTestCase testCase) {
+    public void addTestParameters(TestParameterTarget testCase) {
         testCase.addTestParameter("scenario", "writeStartElementAutoPrefix");
     }
 
diff --git 
a/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/om/sourcedelement/push/WriteStartElementNamespaceUnawareScenario.java
 
b/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/om/sourcedelement/push/WriteStartElementNamespaceUnawareScenario.java
index fd092ce3e..2d2b48329 100644
--- 
a/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/om/sourcedelement/push/WriteStartElementNamespaceUnawareScenario.java
+++ 
b/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/om/sourcedelement/push/WriteStartElementNamespaceUnawareScenario.java
@@ -26,7 +26,7 @@ import javax.xml.stream.XMLStreamWriter;
 
 import org.apache.axiom.om.OMDataSource;
 import org.apache.axiom.om.OMElement;
-import org.apache.axiom.testutils.suite.MatrixTestCase;
+import org.apache.axiom.testutils.suite.TestParameterTarget;
 import org.junit.Assert;
 
 /**
@@ -35,7 +35,7 @@ import org.junit.Assert;
  */
 public class WriteStartElementNamespaceUnawareScenario implements 
PushOMDataSourceScenario {
     @Override
-    public void addTestParameters(MatrixTestCase testCase) {
+    public void addTestParameters(TestParameterTarget testCase) {
         testCase.addTestParameter("scenario", 
"writeStartElementNamespaceUnaware");
     }
 
diff --git 
a/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/om/sourcedelement/push/WriteStartElementWithDefaultNamespaceDeclaredOnParentScenario.java
 
b/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/om/sourcedelement/push/WriteStartElementWithDefaultNamespaceDeclaredOnParentScenario.java
index ef0bebf37..f98ee3637 100644
--- 
a/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/om/sourcedelement/push/WriteStartElementWithDefaultNamespaceDeclaredOnParentScenario.java
+++ 
b/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/om/sourcedelement/push/WriteStartElementWithDefaultNamespaceDeclaredOnParentScenario.java
@@ -25,7 +25,7 @@ import javax.xml.stream.XMLStreamException;
 import javax.xml.stream.XMLStreamWriter;
 
 import org.apache.axiom.om.OMElement;
-import org.apache.axiom.testutils.suite.MatrixTestCase;
+import org.apache.axiom.testutils.suite.TestParameterTarget;
 import org.junit.Assert;
 
 /**
@@ -35,7 +35,7 @@ import org.junit.Assert;
 public class WriteStartElementWithDefaultNamespaceDeclaredOnParentScenario
         implements PushOMDataSourceScenario {
     @Override
-    public void addTestParameters(MatrixTestCase testCase) {
+    public void addTestParameters(TestParameterTarget testCase) {
         testCase.addTestParameter(
                 "scenario", 
"writeStartElementWithDefaultNamespaceDeclaredOnParent");
     }
diff --git 
a/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/om/sourcedelement/push/WriteStartEndDocumentScenario.java
 
b/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/om/sourcedelement/push/WriteStartEndDocumentScenario.java
index ca6423b44..b0e01a332 100644
--- 
a/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/om/sourcedelement/push/WriteStartEndDocumentScenario.java
+++ 
b/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/om/sourcedelement/push/WriteStartEndDocumentScenario.java
@@ -26,7 +26,7 @@ import javax.xml.stream.XMLStreamWriter;
 
 import org.apache.axiom.om.OMDataSource;
 import org.apache.axiom.om.OMElement;
-import org.apache.axiom.testutils.suite.MatrixTestCase;
+import org.apache.axiom.testutils.suite.TestParameterTarget;
 import org.junit.Assert;
 
 /**
@@ -37,7 +37,7 @@ import org.junit.Assert;
  */
 public class WriteStartEndDocumentScenario implements PushOMDataSourceScenario 
{
     @Override
-    public void addTestParameters(MatrixTestCase testCase) {
+    public void addTestParameters(TestParameterTarget testCase) {
         testCase.addTestParameter("scenario", "writeStartEndDocument");
     }
 
diff --git 
a/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/soap/SOAPElementTypeAdapter.java
 
b/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/soap/SOAPElementTypeAdapter.java
index 982386235..3cb7705b3 100644
--- 
a/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/soap/SOAPElementTypeAdapter.java
+++ 
b/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/soap/SOAPElementTypeAdapter.java
@@ -22,7 +22,7 @@ import org.apache.axiom.om.OMElement;
 import org.apache.axiom.soap.SOAPFactory;
 import org.apache.axiom.testing.multiton.AdapterType;
 import org.apache.axiom.testutils.suite.Dimension;
-import org.apache.axiom.testutils.suite.MatrixTestCase;
+import org.apache.axiom.testutils.suite.TestParameterTarget;
 
 @AdapterType
 public abstract class SOAPElementTypeAdapter implements Dimension {
@@ -45,7 +45,7 @@ public abstract class SOAPElementTypeAdapter implements 
Dimension {
     }
 
     @Override
-    public final void addTestParameters(MatrixTestCase testCase) {
+    public final void addTestParameters(TestParameterTarget testCase) {
         testCase.addTestParameter("type", type.getSimpleName());
     }
 
diff --git 
a/testing/testutils/src/main/java/org/apache/axiom/testutils/suite/Dimension.java
 
b/testing/testutils/src/main/java/org/apache/axiom/testutils/suite/Dimension.java
index 4e6e1550f..a72ee5e96 100644
--- 
a/testing/testutils/src/main/java/org/apache/axiom/testutils/suite/Dimension.java
+++ 
b/testing/testutils/src/main/java/org/apache/axiom/testutils/suite/Dimension.java
@@ -19,5 +19,5 @@
 package org.apache.axiom.testutils.suite;
 
 public interface Dimension {
-    void addTestParameters(MatrixTestCase testCase);
+    void addTestParameters(TestParameterTarget target);
 }
diff --git 
a/testing/testutils/src/main/java/org/apache/axiom/testutils/suite/MatrixTestCase.java
 
b/testing/testutils/src/main/java/org/apache/axiom/testutils/suite/MatrixTestCase.java
index ab7d69a04..430633980 100644
--- 
a/testing/testutils/src/main/java/org/apache/axiom/testutils/suite/MatrixTestCase.java
+++ 
b/testing/testutils/src/main/java/org/apache/axiom/testutils/suite/MatrixTestCase.java
@@ -24,22 +24,25 @@ import java.util.Hashtable;
 import junit.framework.TestCase;
 
 /** A test case that can be executed multiple times with different parameters. 
*/
-public abstract class MatrixTestCase extends TestCase {
+public abstract class MatrixTestCase extends TestCase implements 
TestParameterTarget {
     private final Dictionary<String, String> parameters = new Hashtable<>();
 
     public MatrixTestCase() {
         setName(getClass().getName());
     }
 
+    @Override
     public final void addTestParameter(String name, String value) {
         setName(getName() + " [" + name + "=" + value + "]");
         parameters.put(name, value);
     }
 
+    @Override
     public final void addTestParameter(String name, boolean value) {
         addTestParameter(name, String.valueOf(value));
     }
 
+    @Override
     public final void addTestParameter(String name, int value) {
         addTestParameter(name, String.valueOf(value));
     }
diff --git 
a/testing/testutils/src/main/java/org/apache/axiom/testutils/suite/Dimension.java
 
b/testing/testutils/src/main/java/org/apache/axiom/testutils/suite/TestParameterTarget.java
similarity index 68%
copy from 
testing/testutils/src/main/java/org/apache/axiom/testutils/suite/Dimension.java
copy to 
testing/testutils/src/main/java/org/apache/axiom/testutils/suite/TestParameterTarget.java
index 4e6e1550f..4b6fd986c 100644
--- 
a/testing/testutils/src/main/java/org/apache/axiom/testutils/suite/Dimension.java
+++ 
b/testing/testutils/src/main/java/org/apache/axiom/testutils/suite/TestParameterTarget.java
@@ -18,6 +18,14 @@
  */
 package org.apache.axiom.testutils.suite;
 
-public interface Dimension {
-    void addTestParameters(MatrixTestCase testCase);
+/**
+ * Receives test parameter registrations. This interface decouples {@link 
Dimension} from {@link
+ * MatrixTestCase} so that dimensions can be reused with other test tree 
structures.
+ */
+public interface TestParameterTarget {
+    void addTestParameter(String name, String value);
+
+    void addTestParameter(String name, boolean value);
+
+    void addTestParameter(String name, int value);
 }

Reply via email to