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

asf-gitbox-commits pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/cayenne.git

commit 7704285eff2852f783ff4f983dea4e1dcb392a91
Author: Andrus Adamchik <[email protected]>
AuthorDate: Thu May 14 10:40:24 2026 -0400

    tests cleanup - unwinding DI
---
 .../org/apache/cayenne/unit/CayenneTestsEnv.java   | 35 ++++++----
 .../org/apache/cayenne/unit/RuntimeTelemetry.java  |  5 +-
 ...DataNode.java => RuntimeTelemetryDataNode.java} |  6 +-
 .../unit/runtime/CayenneTestDataNodeFactory.java   | 74 ----------------------
 4 files changed, 28 insertions(+), 92 deletions(-)

diff --git a/cayenne/src/test/java/org/apache/cayenne/unit/CayenneTestsEnv.java 
b/cayenne/src/test/java/org/apache/cayenne/unit/CayenneTestsEnv.java
index 431f5bee1..53903f993 100644
--- a/cayenne/src/test/java/org/apache/cayenne/unit/CayenneTestsEnv.java
+++ b/cayenne/src/test/java/org/apache/cayenne/unit/CayenneTestsEnv.java
@@ -21,12 +21,15 @@ package org.apache.cayenne.unit;
 import org.apache.cayenne.access.DataContext;
 import org.apache.cayenne.access.DataDomain;
 import org.apache.cayenne.access.DataNode;
+import org.apache.cayenne.access.dbsync.SkipSchemaUpdateStrategy;
+import org.apache.cayenne.access.jdbc.SQLTemplateProcessor;
+import org.apache.cayenne.access.jdbc.reader.RowReaderFactory;
+import org.apache.cayenne.access.translator.batch.BatchTranslatorFactory;
+import org.apache.cayenne.access.translator.select.SelectTranslatorFactory;
 import org.apache.cayenne.configuration.Constants;
 import org.apache.cayenne.configuration.DataMapLoader;
-import org.apache.cayenne.configuration.DataNodeDescriptor;
 import org.apache.cayenne.configuration.DataSourceDescriptor;
 import org.apache.cayenne.configuration.runtime.CoreModule;
-import org.apache.cayenne.configuration.runtime.DataNodeFactory;
 import org.apache.cayenne.dba.DbAdapter;
 import org.apache.cayenne.di.AdhocObjectFactory;
 import org.apache.cayenne.di.Binder;
@@ -44,7 +47,6 @@ import org.apache.cayenne.unit.dba.UnitDbAdapter;
 import org.apache.cayenne.unit.runtime.AllTestsSchemaManager;
 import org.apache.cayenne.unit.runtime.DbCleaner;
 import org.apache.cayenne.unit.runtime.FlavoredDbHelper;
-import org.apache.cayenne.unit.runtime.CayenneTestDataNodeFactory;
 import org.apache.cayenne.unit.runtime.RuntimeCaseDataSourceFactory;
 import org.apache.cayenne.unit.runtime.RuntimeCaseModule;
 import org.apache.cayenne.unit.util.SQLTemplateCustomizer;
@@ -176,18 +178,28 @@ public class CayenneTestsEnv implements 
BeforeEachCallback, AfterEachCallback {
 
         UnitDbAdapter unitDbAdapter = unitDbAdapter();
         DataDomain domain = runtime.getDataDomain();
-        DataNodeFactory dataNodeFactory = 
runtime.getInjector().getInstance(DataNodeFactory.class);
+        Injector runtimeInjector = runtime.getInjector();
+
+        JdbcEventLogger jdbcEventLogger = 
runtimeInjector.getInstance(JdbcEventLogger.class);
+        RowReaderFactory rowReaderFactory = 
runtimeInjector.getInstance(RowReaderFactory.class);
+        BatchTranslatorFactory batchTranslatorFactory = 
runtimeInjector.getInstance(BatchTranslatorFactory.class);
+        SelectTranslatorFactory selectTranslatorFactory = 
runtimeInjector.getInstance(SelectTranslatorFactory.class);
+        SQLTemplateProcessor sqlTemplateProcessor = 
runtimeInjector.getInstance(SQLTemplateProcessor.class);
+        DbAdapter adapter = runtimeInjector.getInstance(DbAdapter.class);
 
         DataNode lastNode = null;
         for (DataMap dataMap : domain.getDataMaps()) {
-            DataNodeDescriptor descriptor = new 
DataNodeDescriptor(dataMap.getName());
+            DataNode node = new RuntimeTelemetryDataNode(dataMap.getName());
+
+            node.setJdbcEventLogger(jdbcEventLogger);
+            node.setRowReaderFactory(rowReaderFactory);
+            node.setBatchTranslatorFactory(batchTranslatorFactory);
+            node.setSelectTranslatorFactory(selectTranslatorFactory);
+            
node.setDataSource(DATA_SOURCE_FACTORY.getDataSource(dataMap.getName()));
+            node.setAdapter(adapter);
+            node.setSchemaUpdateStrategy(new SkipSchemaUpdateStrategy());
+            node.setSqlTemplateProcessor(sqlTemplateProcessor);
 
-            DataNode node;
-            try {
-                node = dataNodeFactory.createDataNode(descriptor);
-            } catch (Exception e) {
-                throw new RuntimeException("Failed to create test DataNode for 
map " + dataMap.getName(), e);
-            }
             node.addDataMap(dataMap);
 
             for (Procedure proc : dataMap.getProcedures()) {
@@ -284,7 +296,6 @@ public class CayenneTestsEnv implements BeforeEachCallback, 
AfterEachCallback {
             // a fresh DbAdapter per call — RuntimeCaseDbAdapterProvider is 
unscoped in the test injector
             binder.bind(DbAdapter.class).toProviderInstance(() -> 
INJECTOR.getInstance(DbAdapter.class));
 
-            
binder.bind(DataNodeFactory.class).to(CayenneTestDataNodeFactory.class);
             
binder.bind(UnitDbAdapter.class).toInstance(INJECTOR.getInstance(UnitDbAdapter.class));
             
binder.bind(RuntimeCaseDataSourceFactory.class).toInstance(DATA_SOURCE_FACTORY);
 
diff --git 
a/cayenne/src/test/java/org/apache/cayenne/unit/RuntimeTelemetry.java 
b/cayenne/src/test/java/org/apache/cayenne/unit/RuntimeTelemetry.java
index 2f94d02fa..19ab38458 100644
--- a/cayenne/src/test/java/org/apache/cayenne/unit/RuntimeTelemetry.java
+++ b/cayenne/src/test/java/org/apache/cayenne/unit/RuntimeTelemetry.java
@@ -20,7 +20,6 @@ package org.apache.cayenne.unit;
 
 import org.apache.cayenne.access.DataNode;
 import org.apache.cayenne.runtime.CayenneRuntime;
-import org.apache.cayenne.unit.runtime.CayenneTestDataNode;
 
 import java.util.Collection;
 
@@ -38,7 +37,7 @@ class RuntimeTelemetry {
     }
 
     public static int runWithQueryCounter(CayenneRuntime runtime, Runnable 
task) {
-        CayenneTestDataNode node = (CayenneTestDataNode) 
runtime.getDataDomain().getDataNodes().iterator().next();
+        RuntimeTelemetryDataNode node = (RuntimeTelemetryDataNode) 
runtime.getDataDomain().getDataNodes().iterator().next();
 
         int start = node.getQueriesCount();
         int end;
@@ -52,7 +51,7 @@ class RuntimeTelemetry {
 
     private static void setBlockingQueries(Collection<DataNode> nodes, boolean 
blocking) {
         for (DataNode node : nodes) {
-            ((CayenneTestDataNode) node).setBlockingQueries(blocking);
+            ((RuntimeTelemetryDataNode) node).setBlockingQueries(blocking);
         }
     }
 }
diff --git 
a/cayenne/src/test/java/org/apache/cayenne/unit/runtime/CayenneTestDataNode.java
 b/cayenne/src/test/java/org/apache/cayenne/unit/RuntimeTelemetryDataNode.java
similarity index 93%
rename from 
cayenne/src/test/java/org/apache/cayenne/unit/runtime/CayenneTestDataNode.java
rename to 
cayenne/src/test/java/org/apache/cayenne/unit/RuntimeTelemetryDataNode.java
index 29e7f1956..7c58806c7 100644
--- 
a/cayenne/src/test/java/org/apache/cayenne/unit/runtime/CayenneTestDataNode.java
+++ 
b/cayenne/src/test/java/org/apache/cayenne/unit/RuntimeTelemetryDataNode.java
@@ -16,7 +16,7 @@
  *  specific language governing permissions and limitations
  *  under the License.
  ****************************************************************/
-package org.apache.cayenne.unit.runtime;
+package org.apache.cayenne.unit;
 
 import org.apache.cayenne.access.DataNode;
 import org.apache.cayenne.access.OperationObserver;
@@ -26,12 +26,12 @@ import org.junit.jupiter.api.Assertions;
 import java.util.Collection;
 import java.util.concurrent.atomic.AtomicInteger;
 
-public class CayenneTestDataNode extends DataNode {
+class RuntimeTelemetryDataNode extends DataNode {
 
     private final AtomicInteger queryCounter = new AtomicInteger();
     private volatile boolean blockingQueries;
 
-    public CayenneTestDataNode(String name) {
+    public RuntimeTelemetryDataNode(String name) {
         super(name);
     }
 
diff --git 
a/cayenne/src/test/java/org/apache/cayenne/unit/runtime/CayenneTestDataNodeFactory.java
 
b/cayenne/src/test/java/org/apache/cayenne/unit/runtime/CayenneTestDataNodeFactory.java
deleted file mode 100644
index 321ffc3a2..000000000
--- 
a/cayenne/src/test/java/org/apache/cayenne/unit/runtime/CayenneTestDataNodeFactory.java
+++ /dev/null
@@ -1,74 +0,0 @@
-/*****************************************************************
- *   Licensed to the Apache Software Foundation (ASF) under one
- *  or more contributor license agreements.  See the NOTICE file
- *  distributed with this work for additional information
- *  regarding copyright ownership.  The ASF licenses this file
- *  to you under the Apache License, Version 2.0 (the
- *  "License"); you may not use this file except in compliance
- *  with the License.  You may obtain a copy of the License at
- *
- *    https://www.apache.org/licenses/LICENSE-2.0
- *
- *  Unless required by applicable law or agreed to in writing,
- *  software distributed under the License is distributed on an
- *  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- *  KIND, either express or implied.  See the License for the
- *  specific language governing permissions and limitations
- *  under the License.
- ****************************************************************/
-package org.apache.cayenne.unit.runtime;
-
-import org.apache.cayenne.access.DataNode;
-import org.apache.cayenne.access.dbsync.SkipSchemaUpdateStrategy;
-import org.apache.cayenne.access.jdbc.SQLTemplateProcessor;
-import org.apache.cayenne.access.jdbc.reader.RowReaderFactory;
-import org.apache.cayenne.access.translator.batch.BatchTranslatorFactory;
-import org.apache.cayenne.access.translator.select.SelectTranslatorFactory;
-import org.apache.cayenne.configuration.DataNodeDescriptor;
-import org.apache.cayenne.configuration.runtime.DataNodeFactory;
-import org.apache.cayenne.dba.DbAdapter;
-import org.apache.cayenne.di.Inject;
-import org.apache.cayenne.log.JdbcEventLogger;
-
-public class CayenneTestDataNodeFactory implements DataNodeFactory {
-
-       @Inject
-       private JdbcEventLogger jdbcEventLogger;
-
-       @Inject
-       protected RowReaderFactory rowReaderFactory;
-
-       @Inject
-       protected BatchTranslatorFactory batchTranslatorFactory;
-
-       @Inject
-       protected SelectTranslatorFactory selectTranslatorFactory;
-
-       @Inject
-       private RuntimeCaseDataSourceFactory dataSourceFactory;
-
-       @Inject
-       private DbAdapter adapter;
-
-       @Inject
-       protected SQLTemplateProcessor sqlTemplateProcessor;
-
-       @Override
-       public DataNode createDataNode(DataNodeDescriptor nodeDescriptor) {
-               DataNode dataNode = new 
CayenneTestDataNode(nodeDescriptor.getName());
-
-               dataNode.setJdbcEventLogger(jdbcEventLogger);
-               dataNode.setRowReaderFactory(rowReaderFactory);
-               dataNode.setBatchTranslatorFactory(batchTranslatorFactory);
-               dataNode.setSelectTranslatorFactory(selectTranslatorFactory);
-
-               // shared or dedicated DataSources can be mapped per DataMap
-               
dataNode.setDataSource(dataSourceFactory.getDataSource(nodeDescriptor.getName()));
-               dataNode.setAdapter(adapter);
-               dataNode.setSchemaUpdateStrategy(new 
SkipSchemaUpdateStrategy());
-               dataNode.setSqlTemplateProcessor(sqlTemplateProcessor);
-
-               return dataNode;
-       }
-
-}

Reply via email to