You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@shardingsphere.apache.org by to...@apache.org on 2022/12/02 12:24:19 UTC
[shardingsphere] branch master updated: Refactor TestKeyProvider (#22599)
This is an automated email from the ASF dual-hosted git repository.
totalo pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/shardingsphere.git
The following commit(s) were added to refs/heads/master by this push:
new 02b1945bc1a Refactor TestKeyProvider (#22599)
02b1945bc1a is described below
commit 02b1945bc1aaa90bc97c2cae68e746f004abdeaa
Author: Liang Zhang <zh...@apache.org>
AuthorDate: Fri Dec 2 20:24:13 2022 +0800
Refactor TestKeyProvider (#22599)
---
.../framework/runner/parallel/CaseTestKeyProvider.java | 8 +-------
.../runner/parallel/ScenarioTestKeyProvider.java | 7 +------
.../test/runner/executor/ParallelRunnerExecutors.java | 16 +++++++++-------
.../shardingsphere/test/runner/key/TestKeyProvider.java | 12 ++----------
.../test/runner/scheduler/ParallelRunnerScheduler.java | 2 +-
5 files changed, 14 insertions(+), 31 deletions(-)
diff --git a/test/integration-test/test-suite/src/test/java/org/apache/shardingsphere/test/integration/framework/runner/parallel/CaseTestKeyProvider.java b/test/integration-test/test-suite/src/test/java/org/apache/shardingsphere/test/integration/framework/runner/parallel/CaseTestKeyProvider.java
index e6f9a841d79..58ded904f5a 100644
--- a/test/integration-test/test-suite/src/test/java/org/apache/shardingsphere/test/integration/framework/runner/parallel/CaseTestKeyProvider.java
+++ b/test/integration-test/test-suite/src/test/java/org/apache/shardingsphere/test/integration/framework/runner/parallel/CaseTestKeyProvider.java
@@ -17,7 +17,6 @@
package org.apache.shardingsphere.test.integration.framework.runner.parallel;
-import org.apache.shardingsphere.test.integration.framework.param.model.ITParameterizedArray;
import org.apache.shardingsphere.test.runner.ParallelRunningStrategy.ParallelLevel;
import org.apache.shardingsphere.test.runner.key.TestKeyProvider;
import org.apache.shardingsphere.test.runner.param.ParameterizedArray;
@@ -28,12 +27,7 @@ import org.apache.shardingsphere.test.runner.param.ParameterizedArray;
public final class CaseTestKeyProvider implements TestKeyProvider {
@Override
- public String getRunnerKey(final ParameterizedArray parameterizedArray) {
- return ((ITParameterizedArray) parameterizedArray).getDatabaseType().getType();
- }
-
- @Override
- public String getExecutorKey(final ParameterizedArray parameterizedArray) {
+ public String getKey(final ParameterizedArray parameterizedArray) {
return "";
}
diff --git a/test/integration-test/test-suite/src/test/java/org/apache/shardingsphere/test/integration/framework/runner/parallel/ScenarioTestKeyProvider.java b/test/integration-test/test-suite/src/test/java/org/apache/shardingsphere/test/integration/framework/runner/parallel/ScenarioTestKeyProvider.java
index 4d88ec12be5..e9d519b70ad 100644
--- a/test/integration-test/test-suite/src/test/java/org/apache/shardingsphere/test/integration/framework/runner/parallel/ScenarioTestKeyProvider.java
+++ b/test/integration-test/test-suite/src/test/java/org/apache/shardingsphere/test/integration/framework/runner/parallel/ScenarioTestKeyProvider.java
@@ -28,12 +28,7 @@ import org.apache.shardingsphere.test.runner.param.ParameterizedArray;
public final class ScenarioTestKeyProvider implements TestKeyProvider {
@Override
- public String getRunnerKey(final ParameterizedArray parameterizedArray) {
- return ((ITParameterizedArray) parameterizedArray).getDatabaseType().getType();
- }
-
- @Override
- public String getExecutorKey(final ParameterizedArray parameterizedArray) {
+ public String getKey(final ParameterizedArray parameterizedArray) {
ITParameterizedArray itParameterizedArray = (ITParameterizedArray) parameterizedArray;
return String.join("-", itParameterizedArray.getAdapter(), itParameterizedArray.getScenario(), itParameterizedArray.getDatabaseType().getType());
}
diff --git a/test/runner/src/main/java/org/apache/shardingsphere/test/runner/executor/ParallelRunnerExecutors.java b/test/runner/src/main/java/org/apache/shardingsphere/test/runner/executor/ParallelRunnerExecutors.java
index af839f87e8a..8061d70ea24 100644
--- a/test/runner/src/main/java/org/apache/shardingsphere/test/runner/executor/ParallelRunnerExecutors.java
+++ b/test/runner/src/main/java/org/apache/shardingsphere/test/runner/executor/ParallelRunnerExecutors.java
@@ -17,6 +17,8 @@
package org.apache.shardingsphere.test.runner.executor;
+import org.apache.shardingsphere.infra.database.type.DatabaseType;
+
import java.util.Map;
import java.util.concurrent.ConcurrentHashMap;
@@ -25,23 +27,23 @@ import java.util.concurrent.ConcurrentHashMap;
*/
public final class ParallelRunnerExecutors {
- private final Map<String, ParallelRunnerExecutor> executors = new ConcurrentHashMap<>();
+ private final Map<DatabaseType, ParallelRunnerExecutor> executors = new ConcurrentHashMap<>();
/**
* Get executor.
*
- * @param key key bind to the executor
+ * @param databaseType database type
* @return got executor
*/
- public ParallelRunnerExecutor getExecutor(final String key) {
- if (executors.containsKey(key)) {
- return executors.get(key);
+ public ParallelRunnerExecutor getExecutor(final DatabaseType databaseType) {
+ if (executors.containsKey(databaseType)) {
+ return executors.get(databaseType);
}
ParallelRunnerExecutor newExecutor = new ParallelRunnerExecutor();
- if (null != executors.putIfAbsent(key, newExecutor)) {
+ if (null != executors.putIfAbsent(databaseType, newExecutor)) {
newExecutor.finished();
}
- return executors.get(key);
+ return executors.get(databaseType);
}
/**
diff --git a/test/runner/src/main/java/org/apache/shardingsphere/test/runner/key/TestKeyProvider.java b/test/runner/src/main/java/org/apache/shardingsphere/test/runner/key/TestKeyProvider.java
index 2072527e681..1aec5efbb8f 100644
--- a/test/runner/src/main/java/org/apache/shardingsphere/test/runner/key/TestKeyProvider.java
+++ b/test/runner/src/main/java/org/apache/shardingsphere/test/runner/key/TestKeyProvider.java
@@ -26,20 +26,12 @@ import org.apache.shardingsphere.test.runner.param.ParameterizedArray;
public interface TestKeyProvider {
/**
- * Get runner key.
- *
- * @param parameterizedArray parameterized array
- * @return runner key
- */
- String getRunnerKey(ParameterizedArray parameterizedArray);
-
- /**
- * Get executor key.
+ * Get key.
*
* @param parameterizedArray parameterized array
* @return executor key
*/
- String getExecutorKey(ParameterizedArray parameterizedArray);
+ String getKey(ParameterizedArray parameterizedArray);
/**
* Get parallel level.
diff --git a/test/runner/src/main/java/org/apache/shardingsphere/test/runner/scheduler/ParallelRunnerScheduler.java b/test/runner/src/main/java/org/apache/shardingsphere/test/runner/scheduler/ParallelRunnerScheduler.java
index 1a991accd77..176b5ead027 100644
--- a/test/runner/src/main/java/org/apache/shardingsphere/test/runner/scheduler/ParallelRunnerScheduler.java
+++ b/test/runner/src/main/java/org/apache/shardingsphere/test/runner/scheduler/ParallelRunnerScheduler.java
@@ -42,7 +42,7 @@ public final class ParallelRunnerScheduler implements RunnerScheduler {
public void schedule(final Runnable childStatement) {
ParameterizedArray parameterizedArray = new RunnerParameters(childStatement).getParameterizedArray();
TestKeyProvider provider = TestKeyProviderFactory.newInstance(parallelLevel);
- runnerExecutors.getExecutor(provider.getRunnerKey(parameterizedArray)).execute(provider.getExecutorKey(parameterizedArray), childStatement);
+ runnerExecutors.getExecutor(parameterizedArray.getDatabaseType()).execute(provider.getKey(parameterizedArray), childStatement);
}
@Override