You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@shardingsphere.apache.org by su...@apache.org on 2022/12/01 09:45:07 UTC

[shardingsphere] branch master updated: Refactor TestKeyProvider (#22563)

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

sunnianjun 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 33718dc5d80 Refactor TestKeyProvider (#22563)
33718dc5d80 is described below

commit 33718dc5d80b88bef3f1959d176e10151de68d34
Author: Liang Zhang <zh...@apache.org>
AuthorDate: Thu Dec 1 17:44:57 2022 +0800

    Refactor TestKeyProvider (#22563)
---
 kernel/data-pipeline/scenario/consistencycheck/pom.xml      |  5 ++---
 kernel/data-pipeline/scenario/migration/pom.xml             |  5 ++---
 .../framework/runner/parallel/CaseTestKeyProvider.java      |  9 ++++-----
 .../framework/runner/parallel/ScenarioTestKeyProvider.java  | 13 ++++++-------
 .../shardingsphere/test/runner/key/TestKeyProvider.java     |  9 +++++----
 .../test/runner/key/impl/NormalTestKeyProvider.java         |  5 +++--
 .../test/runner/scheduler/ParallelRunnerScheduler.java      |  5 ++++-
 7 files changed, 26 insertions(+), 25 deletions(-)

diff --git a/kernel/data-pipeline/scenario/consistencycheck/pom.xml b/kernel/data-pipeline/scenario/consistencycheck/pom.xml
index e8e6124db63..2edad97e2a4 100644
--- a/kernel/data-pipeline/scenario/consistencycheck/pom.xml
+++ b/kernel/data-pipeline/scenario/consistencycheck/pom.xml
@@ -16,13 +16,12 @@
   ~ limitations under the License.
   -->
 
-<project xmlns="http://maven.apache.org/POM/4.0.0"
-         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
          xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
     <modelVersion>4.0.0</modelVersion>
     <parent>
-        <artifactId>shardingsphere-data-pipeline-scenario</artifactId>
         <groupId>org.apache.shardingsphere</groupId>
+        <artifactId>shardingsphere-data-pipeline-scenario</artifactId>
         <version>5.2.2-SNAPSHOT</version>
     </parent>
     <artifactId>shardingsphere-data-pipeline-scenario-consistencycheck</artifactId>
diff --git a/kernel/data-pipeline/scenario/migration/pom.xml b/kernel/data-pipeline/scenario/migration/pom.xml
index f8db2df041a..fbb3007ed6b 100644
--- a/kernel/data-pipeline/scenario/migration/pom.xml
+++ b/kernel/data-pipeline/scenario/migration/pom.xml
@@ -16,13 +16,12 @@
   ~ limitations under the License.
   -->
 
-<project xmlns="http://maven.apache.org/POM/4.0.0"
-         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
          xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
     <modelVersion>4.0.0</modelVersion>
     <parent>
-        <artifactId>shardingsphere-data-pipeline-scenario</artifactId>
         <groupId>org.apache.shardingsphere</groupId>
+        <artifactId>shardingsphere-data-pipeline-scenario</artifactId>
         <version>5.2.2-SNAPSHOT</version>
     </parent>
     <artifactId>shardingsphere-data-pipeline-scenario-migration</artifactId>
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 35b97b1e269..e6f9a841d79 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
@@ -20,7 +20,7 @@ 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.RunnerParameters;
+import org.apache.shardingsphere.test.runner.param.ParameterizedArray;
 
 /**
  * Case test key provider.
@@ -28,13 +28,12 @@ import org.apache.shardingsphere.test.runner.param.RunnerParameters;
 public final class CaseTestKeyProvider implements TestKeyProvider {
     
     @Override
-    public String getRunnerKey(final Runnable childStatement) {
-        ITParameterizedArray parameterizedArray = (ITParameterizedArray) new RunnerParameters(childStatement).getParameterizedArray();
-        return parameterizedArray.getDatabaseType().getType();
+    public String getRunnerKey(final ParameterizedArray parameterizedArray) {
+        return ((ITParameterizedArray) parameterizedArray).getDatabaseType().getType();
     }
     
     @Override
-    public String getExecutorKey(final Runnable childStatement) {
+    public String getExecutorKey(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 a10c715e62c..4d88ec12be5 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
@@ -20,7 +20,7 @@ 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.RunnerParameters;
+import org.apache.shardingsphere.test.runner.param.ParameterizedArray;
 
 /**
  * Scenario test key provider.
@@ -28,15 +28,14 @@ import org.apache.shardingsphere.test.runner.param.RunnerParameters;
 public final class ScenarioTestKeyProvider implements TestKeyProvider {
     
     @Override
-    public String getRunnerKey(final Runnable childStatement) {
-        ITParameterizedArray parameterizedArray = (ITParameterizedArray) new RunnerParameters(childStatement).getParameterizedArray();
-        return parameterizedArray.getDatabaseType().getType();
+    public String getRunnerKey(final ParameterizedArray parameterizedArray) {
+        return ((ITParameterizedArray) parameterizedArray).getDatabaseType().getType();
     }
     
     @Override
-    public String getExecutorKey(final Runnable childStatement) {
-        ITParameterizedArray parameterizedArray = (ITParameterizedArray) new RunnerParameters(childStatement).getParameterizedArray();
-        return String.join("-", parameterizedArray.getAdapter(), parameterizedArray.getScenario(), parameterizedArray.getDatabaseType().getType());
+    public String getExecutorKey(final ParameterizedArray parameterizedArray) {
+        ITParameterizedArray itParameterizedArray = (ITParameterizedArray) parameterizedArray;
+        return String.join("-", itParameterizedArray.getAdapter(), itParameterizedArray.getScenario(), itParameterizedArray.getDatabaseType().getType());
     }
     
     @Override
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 2687dd58547..2072527e681 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
@@ -18,6 +18,7 @@
 package org.apache.shardingsphere.test.runner.key;
 
 import org.apache.shardingsphere.test.runner.ParallelRunningStrategy.ParallelLevel;
+import org.apache.shardingsphere.test.runner.param.ParameterizedArray;
 
 /**
  * Test key provider.
@@ -27,18 +28,18 @@ public interface TestKeyProvider {
     /**
      * Get runner key.
      *
-     * @param childStatement child statement
+     * @param parameterizedArray parameterized array
      * @return runner key
      */
-    String getRunnerKey(Runnable childStatement);
+    String getRunnerKey(ParameterizedArray parameterizedArray);
     
     /**
      * Get executor key.
      * 
-     * @param childStatement child statement
+     * @param parameterizedArray parameterized array
      * @return executor key
      */
-    String getExecutorKey(Runnable childStatement);
+    String getExecutorKey(ParameterizedArray parameterizedArray);
     
     /**
      * Get parallel level.
diff --git a/test/runner/src/main/java/org/apache/shardingsphere/test/runner/key/impl/NormalTestKeyProvider.java b/test/runner/src/main/java/org/apache/shardingsphere/test/runner/key/impl/NormalTestKeyProvider.java
index 852dc5f912a..0e6e6b1aa89 100644
--- a/test/runner/src/main/java/org/apache/shardingsphere/test/runner/key/impl/NormalTestKeyProvider.java
+++ b/test/runner/src/main/java/org/apache/shardingsphere/test/runner/key/impl/NormalTestKeyProvider.java
@@ -19,6 +19,7 @@ package org.apache.shardingsphere.test.runner.key.impl;
 
 import org.apache.shardingsphere.test.runner.ParallelRunningStrategy.ParallelLevel;
 import org.apache.shardingsphere.test.runner.key.TestKeyProvider;
+import org.apache.shardingsphere.test.runner.param.ParameterizedArray;
 
 /**
  * Normal test key provider.
@@ -26,12 +27,12 @@ import org.apache.shardingsphere.test.runner.key.TestKeyProvider;
 public final class NormalTestKeyProvider implements TestKeyProvider {
     
     @Override
-    public String getRunnerKey(final Runnable childStatement) {
+    public String getRunnerKey(final ParameterizedArray parameterizedArray) {
         return "";
     }
     
     @Override
-    public String getExecutorKey(final Runnable childStatement) {
+    public String getExecutorKey(final ParameterizedArray parameterizedArray) {
         return "";
     }
     
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 9913205a860..1a991accd77 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
@@ -23,6 +23,8 @@ import org.apache.shardingsphere.test.runner.ParallelRunningStrategy.ParallelLev
 import org.apache.shardingsphere.test.runner.executor.ParallelRunnerExecutors;
 import org.apache.shardingsphere.test.runner.key.TestKeyProvider;
 import org.apache.shardingsphere.test.runner.key.TestKeyProviderFactory;
+import org.apache.shardingsphere.test.runner.param.ParameterizedArray;
+import org.apache.shardingsphere.test.runner.param.RunnerParameters;
 import org.junit.runners.model.RunnerScheduler;
 
 /**
@@ -38,8 +40,9 @@ public final class ParallelRunnerScheduler implements RunnerScheduler {
     
     @Override
     public void schedule(final Runnable childStatement) {
+        ParameterizedArray parameterizedArray = new RunnerParameters(childStatement).getParameterizedArray();
         TestKeyProvider provider = TestKeyProviderFactory.newInstance(parallelLevel);
-        runnerExecutors.getExecutor(provider.getRunnerKey(childStatement)).execute(provider.getExecutorKey(childStatement), childStatement);
+        runnerExecutors.getExecutor(provider.getRunnerKey(parameterizedArray)).execute(provider.getExecutorKey(parameterizedArray), childStatement);
     }
     
     @Override