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 b983a8525 Rename MatrixTestContainer to DimensionFanOutNode throughout 
design doc
b983a8525 is described below

commit b983a85250caa28cfaa7c3e8a8309c8ea07273bc
Author: Andreas Veithen-Knowles <[email protected]>
AuthorDate: Sat Feb 28 12:18:38 2026 +0000

    Rename MatrixTestContainer to DimensionFanOutNode throughout design doc
    
    All references, code, and prose updated to use the new name for clarity and 
extensibility.
---
 docs/design/test-suite-pattern.md | 24 ++++++++++++------------
 1 file changed, 12 insertions(+), 12 deletions(-)

diff --git a/docs/design/test-suite-pattern.md 
b/docs/design/test-suite-pattern.md
index bf887c9a9..8b42e3c21 100644
--- a/docs/design/test-suite-pattern.md
+++ b/docs/design/test-suite-pattern.md
@@ -212,7 +212,7 @@ accumulated injector can satisfy all `@Inject` dependencies 
for the test case cl
  * that can be filtered before conversion to JUnit 5's dynamic test API.
  *
  * <p>The {@code parentInjector} parameter threads through the tree: each
- * {@link MatrixTestContainer} creates child injectors from it, and each
+ * {@link DimensionFanOutNode} creates child injectors from it, and each
  * {@link MatrixTest} uses it to instantiate the test class.
  */
 public abstract class MatrixTestNode {
@@ -227,7 +227,7 @@ public abstract class MatrixTestNode {
  * Mirrors {@link DynamicContainer}. Represents a parameterized grouping level
  * in the test tree (e.g. a SOAP version).
  *
- * <p>A {@code MatrixTestContainer} holds a list of {@link Dimension} instances
+ * <p>A {@code DimensionFanOutNode} holds a list of {@link Dimension} instances
  * of a given type (e.g. all {@code SOAPSpec} values). When
  * {@link #toDynamicNodes} is called, it produces one {@link DynamicContainer}
  * per dimension instance. For each dimension instance, a <em>child Guice
@@ -239,16 +239,16 @@ public abstract class MatrixTestNode {
  * <p>The test parameters extracted from each dimension determine both the
  * display name and the filter dictionary. The full parameter dictionary for 
any
  * leaf {@code MatrixTest} is the accumulation of parameters from its ancestor
- * {@code MatrixTestContainer} chain.
+ * {@code DimensionFanOutNode} chain.
  *
  * @param <D> the dimension type
  */
-public class MatrixTestContainer<D extends Dimension> extends MatrixTestNode {
+public class DimensionFanOutNode<D extends Dimension> extends MatrixTestNode {
     private final Class<D> dimensionType;
     private final List<D> dimensions;
     private final List<MatrixTestNode> children = new ArrayList<>();
 
-    public MatrixTestContainer(Class<D> dimensionType, List<D> dimensions) {
+    public DimensionFanOutNode(Class<D> dimensionType, List<D> dimensions) {
         this.dimensionType = dimensionType;
         this.dimensions = dimensions;
     }
@@ -380,9 +380,9 @@ public class MatrixTestSuite {
 
 #### Guice injector hierarchy
 
-The injector hierarchy mirrors the `MatrixTestContainer` nesting. The root 
injector
+The injector hierarchy mirrors the `DimensionFanOutNode` nesting. The root 
injector
 is created by the consumer and binds implementation-level objects. Each
-`MatrixTestContainer` level creates one child injector per dimension value, 
binding
+`DimensionFanOutNode` level creates one child injector per dimension value, 
binding
 the dimension type. By the time a leaf `MatrixTest` is reached, the injector
 can satisfy all `@Inject` dependencies.
 
@@ -461,18 +461,18 @@ public abstract class SAAJTestCase extends TestCase {
 ```
 
 Note that the existing `Dimension.addTestParameters()` mechanism is **not** 
used by test
-case classes at all. Parameters are extracted only by `MatrixTestContainer` 
for display
+case classes at all. Parameters are extracted only by `DimensionFanOutNode` 
for display
 names and filter matching. Test cases interact with dimensions purely as typed 
objects
 obtained through injection.
 
 #### How filtering works
 
-Each `MatrixTestContainer` level holds a list of `Dimension` instances (e.g. 
all
+Each `DimensionFanOutNode` level holds a list of `Dimension` instances (e.g. 
all
 `SOAPSpec` values). When `toDynamicNodes()` is called, each container produces 
one
 `DynamicContainer` per dimension instance, and parameters accumulate from the 
root down:
 
 ```
-MatrixTestContainer(SOAPSpec.class, [SOAPSpec.SOAP11, SOAPSpec.SOAP12])
+DimensionFanOutNode(SOAPSpec.class, [SOAPSpec.SOAP11, SOAPSpec.SOAP12])
   MatrixTest(TestAddChildElementReification.class)
   MatrixTest(TestGetOwnerDocument.class)
 
@@ -499,8 +499,8 @@ public class SAAJTestSuite {
             }
         });
 
-        MatrixTestContainer<SOAPSpec> specs = new MatrixTestContainer<>(
-                SOAPSpec.class, Multiton.getInstances(SOAPSpec.class));
+        DimensionFanOutNode<SOAPSpec> specs = new DimensionFanOutNode<>(
+            SOAPSpec.class, Multiton.getInstances(SOAPSpec.class));
         specs.addChild(new MatrixTest(TestAddChildElementReification.class));
         specs.addChild(new 
MatrixTest(TestExamineMustUnderstandHeaderElements.class));
         specs.addChild(new MatrixTest(TestAddChildElementLocalName.class));

Reply via email to