You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@shardingsphere.apache.org by pa...@apache.org on 2022/11/29 07:13:32 UTC

[shardingsphere] branch master updated: Add SQLParserParameterizedArray (#22497)

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

panjuan 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 e71e94d7e1b Add SQLParserParameterizedArray (#22497)
e71e94d7e1b is described below

commit e71e94d7e1b71694402829ea0074cb085129069e
Author: Liang Zhang <zh...@apache.org>
AuthorDate: Tue Nov 29 15:13:26 2022 +0800

    Add SQLParserParameterizedArray (#22497)
---
 ...Array.java => SQLParserParameterizedArray.java} | 33 ++++++++++------------
 .../param/ExternalSQLParserParameterizedArray.java |  8 +++---
 .../sql/parser/external/loader/SQLCaseLoader.java  |  4 +--
 .../param/InternalSQLParserParameterizedArray.java |  4 +--
 .../test/runner/param/RunnerParameters.java        |  6 ++--
 5 files changed, 26 insertions(+), 29 deletions(-)

diff --git a/test/parser/src/main/java/org/apache/shardingsphere/test/sql/parser/external/engine/param/ExternalSQLParserParameterizedArray.java b/test/parser/src/main/java/org/apache/shardingsphere/test/sql/parser/SQLParserParameterizedArray.java
similarity index 60%
copy from test/parser/src/main/java/org/apache/shardingsphere/test/sql/parser/external/engine/param/ExternalSQLParserParameterizedArray.java
copy to test/parser/src/main/java/org/apache/shardingsphere/test/sql/parser/SQLParserParameterizedArray.java
index eeb846fca39..2da1184adff 100644
--- a/test/parser/src/main/java/org/apache/shardingsphere/test/sql/parser/external/engine/param/ExternalSQLParserParameterizedArray.java
+++ b/test/parser/src/main/java/org/apache/shardingsphere/test/sql/parser/SQLParserParameterizedArray.java
@@ -15,29 +15,26 @@
  * limitations under the License.
  */
 
-package org.apache.shardingsphere.test.sql.parser.external.engine.param;
+package org.apache.shardingsphere.test.sql.parser;
 
-import lombok.Getter;
-import lombok.RequiredArgsConstructor;
 import org.apache.shardingsphere.test.runner.param.ParameterizedArray;
 
 /**
- * External SQL parser parameterized array.
+ * SQL parser parameterized array.
  */
-@RequiredArgsConstructor
-@Getter
-public final class ExternalSQLParserParameterizedArray implements ParameterizedArray {
+public interface SQLParserParameterizedArray extends ParameterizedArray {
     
-    private final String sqlCaseId;
+    /**
+     * Get SQL case ID.
+     * 
+     * @return SQL case ID
+     */
+    String getSqlCaseId();
     
-    private final String sql;
-    
-    private final String databaseType;
-    
-    private final String reportType;
-    
-    @Override
-    public String toString() {
-        return String.format("%s (%s) -> %s", sqlCaseId, databaseType, sql);
-    }
+    /**
+     * Get database type.
+     * 
+     * @return database type
+     */
+    String getDatabaseType();
 }
diff --git a/test/parser/src/main/java/org/apache/shardingsphere/test/sql/parser/external/engine/param/ExternalSQLParserParameterizedArray.java b/test/parser/src/main/java/org/apache/shardingsphere/test/sql/parser/external/engine/param/ExternalSQLParserParameterizedArray.java
index eeb846fca39..8c8dd26e567 100644
--- a/test/parser/src/main/java/org/apache/shardingsphere/test/sql/parser/external/engine/param/ExternalSQLParserParameterizedArray.java
+++ b/test/parser/src/main/java/org/apache/shardingsphere/test/sql/parser/external/engine/param/ExternalSQLParserParameterizedArray.java
@@ -19,21 +19,21 @@ package org.apache.shardingsphere.test.sql.parser.external.engine.param;
 
 import lombok.Getter;
 import lombok.RequiredArgsConstructor;
-import org.apache.shardingsphere.test.runner.param.ParameterizedArray;
+import org.apache.shardingsphere.test.sql.parser.SQLParserParameterizedArray;
 
 /**
  * External SQL parser parameterized array.
  */
 @RequiredArgsConstructor
 @Getter
-public final class ExternalSQLParserParameterizedArray implements ParameterizedArray {
+public final class ExternalSQLParserParameterizedArray implements SQLParserParameterizedArray {
     
     private final String sqlCaseId;
     
-    private final String sql;
-    
     private final String databaseType;
     
+    private final String sql;
+    
     private final String reportType;
     
     @Override
diff --git a/test/parser/src/main/java/org/apache/shardingsphere/test/sql/parser/external/loader/SQLCaseLoader.java b/test/parser/src/main/java/org/apache/shardingsphere/test/sql/parser/external/loader/SQLCaseLoader.java
index 9ddf1505123..8fbf63a3091 100644
--- a/test/parser/src/main/java/org/apache/shardingsphere/test/sql/parser/external/loader/SQLCaseLoader.java
+++ b/test/parser/src/main/java/org/apache/shardingsphere/test/sql/parser/external/loader/SQLCaseLoader.java
@@ -68,7 +68,7 @@ public final class SQLCaseLoader {
             result.addAll(createSQLCases(fileName, sqlCaseFileContent, resultFileContent, databaseType, reportType));
         }
         if (result.isEmpty()) {
-            result.add(new ExternalSQLParserParameterizedArray("", "", databaseType, reportType));
+            result.add(new ExternalSQLParserParameterizedArray("", databaseType, "", reportType));
         }
         return result;
     }
@@ -102,7 +102,7 @@ public final class SQLCaseLoader {
                 resultIndex = searchInResultContent(resultIndex, rawResultLines, completedSQL, statementLines);
                 if (resultIndex >= rawResultLines.length || !rawResultLines[resultIndex].contains("ERROR")) {
                     String sqlCaseId = sqlCaseFileName + sqlCaseEnum;
-                    result.add(new ExternalSQLParserParameterizedArray(sqlCaseId, completedSQL, databaseType, reportType));
+                    result.add(new ExternalSQLParserParameterizedArray(sqlCaseId, databaseType, completedSQL, reportType));
                     sqlCaseEnum++;
                 }
                 completedSQL = "";
diff --git a/test/parser/src/main/java/org/apache/shardingsphere/test/sql/parser/internal/engine/param/InternalSQLParserParameterizedArray.java b/test/parser/src/main/java/org/apache/shardingsphere/test/sql/parser/internal/engine/param/InternalSQLParserParameterizedArray.java
index 3551a97f1fe..55039e04e37 100644
--- a/test/parser/src/main/java/org/apache/shardingsphere/test/sql/parser/internal/engine/param/InternalSQLParserParameterizedArray.java
+++ b/test/parser/src/main/java/org/apache/shardingsphere/test/sql/parser/internal/engine/param/InternalSQLParserParameterizedArray.java
@@ -19,7 +19,7 @@ package org.apache.shardingsphere.test.sql.parser.internal.engine.param;
 
 import lombok.Getter;
 import lombok.RequiredArgsConstructor;
-import org.apache.shardingsphere.test.runner.param.ParameterizedArray;
+import org.apache.shardingsphere.test.sql.parser.SQLParserParameterizedArray;
 import org.apache.shardingsphere.test.sql.parser.internal.cases.sql.type.SQLCaseType;
 
 /**
@@ -27,7 +27,7 @@ import org.apache.shardingsphere.test.sql.parser.internal.cases.sql.type.SQLCase
  */
 @RequiredArgsConstructor
 @Getter
-public final class InternalSQLParserParameterizedArray implements ParameterizedArray {
+public final class InternalSQLParserParameterizedArray implements SQLParserParameterizedArray {
     
     private final String sqlCaseId;
     
diff --git a/test/runner/src/main/java/org/apache/shardingsphere/test/runner/param/RunnerParameters.java b/test/runner/src/main/java/org/apache/shardingsphere/test/runner/param/RunnerParameters.java
index 40b727cd2e3..99138118efe 100644
--- a/test/runner/src/main/java/org/apache/shardingsphere/test/runner/param/RunnerParameters.java
+++ b/test/runner/src/main/java/org/apache/shardingsphere/test/runner/param/RunnerParameters.java
@@ -38,9 +38,9 @@ public final class RunnerParameters {
      */
     @SneakyThrows(ReflectiveOperationException.class)
     public ParameterizedArray getParameterizedArray() {
-        Field parametersField = BlockJUnit4ClassRunnerWithParameters.class.getDeclaredField("parameters");
-        parametersField.setAccessible(true);
-        Object[] params = (Object[]) parametersField.get(getRunner());
+        Field paramsField = BlockJUnit4ClassRunnerWithParameters.class.getDeclaredField("parameters");
+        paramsField.setAccessible(true);
+        Object[] params = (Object[]) paramsField.get(getRunner());
         return (ParameterizedArray) params[0];
     }