You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@shardingsphere.apache.org by ch...@apache.org on 2024/01/25 04:43:51 UTC

(shardingsphere) branch master updated: Refactor BaseDMLE2EIT to support order by in batch api test (#29846)

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

chengzhang 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 d6d10796bd2 Refactor BaseDMLE2EIT to support order by in batch api test (#29846)
d6d10796bd2 is described below

commit d6d10796bd2ba6ed6a18f6673fe7e987dde9d67b
Author: Zhengqiang Duan <du...@apache.org>
AuthorDate: Thu Jan 25 12:43:44 2024 +0800

    Refactor BaseDMLE2EIT to support order by in batch api test (#29846)
---
 .../shardingsphere/test/e2e/engine/type/dml/BaseDMLE2EIT.java  | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/test/e2e/sql/src/test/java/org/apache/shardingsphere/test/e2e/engine/type/dml/BaseDMLE2EIT.java b/test/e2e/sql/src/test/java/org/apache/shardingsphere/test/e2e/engine/type/dml/BaseDMLE2EIT.java
index 43fd0eb3be1..16e8f033907 100644
--- a/test/e2e/sql/src/test/java/org/apache/shardingsphere/test/e2e/engine/type/dml/BaseDMLE2EIT.java
+++ b/test/e2e/sql/src/test/java/org/apache/shardingsphere/test/e2e/engine/type/dml/BaseDMLE2EIT.java
@@ -48,6 +48,7 @@ import java.sql.Types;
 import java.util.Arrays;
 import java.util.Collection;
 import java.util.List;
+import java.util.Map;
 import java.util.Optional;
 
 import static org.hamcrest.CoreMatchers.is;
@@ -94,7 +95,7 @@ public abstract class BaseDMLE2EIT {
             DataSource dataSource = containerComposer.getActualDataSourceMap().get(dataNode.getDataSourceName());
             try (
                     Connection connection = dataSource.getConnection();
-                    PreparedStatement preparedStatement = connection.prepareStatement(generateFetchActualDataSQL(containerComposer, dataNode, databaseType))) {
+                    PreparedStatement preparedStatement = connection.prepareStatement(generateFetchActualDataSQL(containerComposer.getActualDataSourceMap(), dataNode, databaseType))) {
                 assertDataSet(preparedStatement, expectedDataSetMetaData, containerComposer.getDataSet().findRows(dataNode), databaseType);
             }
         }
@@ -121,17 +122,16 @@ public abstract class BaseDMLE2EIT {
             DataSource dataSource = containerComposer.getActualDataSourceMap().get(dataNode.getDataSourceName());
             try (
                     Connection connection = dataSource.getConnection();
-                    PreparedStatement preparedStatement = connection.prepareStatement(String.format("SELECT * FROM %s ORDER BY 1", dataNode.getTableName()))) {
+                    PreparedStatement preparedStatement = connection.prepareStatement(generateFetchActualDataSQL(containerComposer.getActualDataSourceMap(), dataNode, databaseType))) {
                 assertDataSet(preparedStatement, expectedDataSetMetaData, containerComposer.getDataSet(actualUpdateCounts).findRows(dataNode), databaseType);
             }
         }
     }
     
-    private String generateFetchActualDataSQL(final SingleE2EContainerComposer containerComposer, final DataNode dataNode, final DatabaseType databaseType) throws SQLException {
+    private String generateFetchActualDataSQL(final Map<String, DataSource> actualDataSourceMap, final DataNode dataNode, final DatabaseType databaseType) throws SQLException {
         Optional<DatabaseAssertionMetaData> databaseAssertionMetaData = DatabaseAssertionMetaDataFactory.newInstance(databaseType);
         if (databaseAssertionMetaData.isPresent()) {
-            String primaryKeyColumnName = databaseAssertionMetaData.get().getPrimaryKeyColumnName(
-                    containerComposer.getActualDataSourceMap().get(dataNode.getDataSourceName()), dataNode.getTableName());
+            String primaryKeyColumnName = databaseAssertionMetaData.get().getPrimaryKeyColumnName(actualDataSourceMap.get(dataNode.getDataSourceName()), dataNode.getTableName());
             return String.format("SELECT * FROM %s ORDER BY %s ASC", dataNode.getTableName(), primaryKeyColumnName);
         }
         return String.format("SELECT * FROM %s", dataNode.getTableName());