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 51e3f0a4cd1 Minor refactor for DMLE2EIT (#30356)
51e3f0a4cd1 is described below
commit 51e3f0a4cd109c26250964d26e42812b62e462cd
Author: Zhengqiang Duan <[email protected]>
AuthorDate: Fri Mar 1 13:59:04 2024 +0800
Minor refactor for DMLE2EIT (#30356)
---
.../test/e2e/engine/type/dml/AdditionalDMLE2EIT.java | 14 +++++++-------
.../test/e2e/engine/type/dml/BaseDMLE2EIT.java | 15 +++++++++------
.../test/e2e/engine/type/dml/GeneralDMLE2EIT.java | 4 ++--
3 files changed, 18 insertions(+), 15 deletions(-)
diff --git
a/test/e2e/sql/src/test/java/org/apache/shardingsphere/test/e2e/engine/type/dml/AdditionalDMLE2EIT.java
b/test/e2e/sql/src/test/java/org/apache/shardingsphere/test/e2e/engine/type/dml/AdditionalDMLE2EIT.java
index d1c5aea6e6c..93d42779c35 100644
---
a/test/e2e/sql/src/test/java/org/apache/shardingsphere/test/e2e/engine/type/dml/AdditionalDMLE2EIT.java
+++
b/test/e2e/sql/src/test/java/org/apache/shardingsphere/test/e2e/engine/type/dml/AdditionalDMLE2EIT.java
@@ -62,7 +62,7 @@ class AdditionalDMLE2EIT extends BaseDMLE2EIT {
?
executeUpdateForStatementWithAutoGeneratedKeys(testParam, containerComposer,
connection)
:
executeUpdateForPreparedStatementWithAutoGeneratedKeys(testParam,
containerComposer, connection);
}
- assertDataSet(containerComposer, actualUpdateCount,
testParam.getDatabaseType());
+ assertDataSet(containerComposer, actualUpdateCount, testParam);
}
// TODO support oracle insert statement return auto generated keys
@@ -112,7 +112,7 @@ class AdditionalDMLE2EIT extends BaseDMLE2EIT {
?
executeUpdateForStatementWithColumnIndexes(containerComposer, connection)
:
executeUpdateForPreparedStatementWithColumnIndexes(containerComposer,
connection);
}
- assertDataSet(containerComposer, actualUpdateCount,
testParam.getDatabaseType());
+ assertDataSet(containerComposer, actualUpdateCount, testParam);
}
private int executeUpdateForStatementWithColumnIndexes(final
SingleE2EContainerComposer containerComposer, final Connection connection)
throws SQLException {
@@ -147,7 +147,7 @@ class AdditionalDMLE2EIT extends BaseDMLE2EIT {
?
executeUpdateForStatementWithColumnNames(containerComposer, connection)
:
executeUpdateForPreparedStatementWithColumnNames(containerComposer, connection);
}
- assertDataSet(containerComposer, actualUpdateCount,
testParam.getDatabaseType());
+ assertDataSet(containerComposer, actualUpdateCount, testParam);
}
private int executeUpdateForStatementWithColumnNames(final
SingleE2EContainerComposer containerComposer, final Connection connection)
throws SQLException {
@@ -184,7 +184,7 @@ class AdditionalDMLE2EIT extends BaseDMLE2EIT {
?
executeForStatementWithoutAutoGeneratedKeys(containerComposer, connection)
:
executeForPreparedStatementWithoutAutoGeneratedKeys(containerComposer,
connection);
}
- assertDataSet(containerComposer, actualUpdateCount,
testParam.getDatabaseType());
+ assertDataSet(containerComposer, actualUpdateCount, testParam);
}
private int executeForStatementWithoutAutoGeneratedKeys(final
SingleE2EContainerComposer containerComposer, final Connection connection)
throws SQLException {
@@ -223,7 +223,7 @@ class AdditionalDMLE2EIT extends BaseDMLE2EIT {
? executeForStatementWithAutoGeneratedKeys(testParam,
containerComposer, connection)
:
executeForPreparedStatementWithAutoGeneratedKeys(testParam, containerComposer,
connection);
}
- assertDataSet(containerComposer, actualUpdateCount,
testParam.getDatabaseType());
+ assertDataSet(containerComposer, actualUpdateCount, testParam);
}
private int executeForStatementWithAutoGeneratedKeys(final
AssertionTestParameter testParam,
@@ -264,7 +264,7 @@ class AdditionalDMLE2EIT extends BaseDMLE2EIT {
? executeForStatementWithColumnIndexes(containerComposer,
connection)
:
executeForPreparedStatementWithColumnIndexes(containerComposer, connection);
}
- assertDataSet(containerComposer, actualUpdateCount,
testParam.getDatabaseType());
+ assertDataSet(containerComposer, actualUpdateCount, testParam);
}
private int executeForStatementWithColumnIndexes(final
SingleE2EContainerComposer containerComposer, final Connection connection)
throws SQLException {
@@ -301,7 +301,7 @@ class AdditionalDMLE2EIT extends BaseDMLE2EIT {
? executeForStatementWithColumnNames(containerComposer,
connection)
:
executeForPreparedStatementWithColumnNames(containerComposer, connection);
}
- assertDataSet(containerComposer, actualUpdateCount,
testParam.getDatabaseType());
+ assertDataSet(containerComposer, actualUpdateCount, testParam);
}
private int executeForStatementWithColumnNames(final
SingleE2EContainerComposer containerComposer, final Connection connection)
throws SQLException {
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 16e8f033907..0483ba149af 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
@@ -28,6 +28,7 @@ import
org.apache.shardingsphere.test.e2e.engine.composer.BatchE2EContainerCompo
import org.apache.shardingsphere.test.e2e.engine.composer.E2EContainerComposer;
import
org.apache.shardingsphere.test.e2e.engine.composer.SingleE2EContainerComposer;
import org.apache.shardingsphere.test.e2e.env.DataSetEnvironmentManager;
+import
org.apache.shardingsphere.test.e2e.env.runtime.scenario.database.DatabaseEnvironmentManager;
import
org.apache.shardingsphere.test.e2e.env.runtime.scenario.path.ScenarioDataPath;
import
org.apache.shardingsphere.test.e2e.env.runtime.scenario.path.ScenarioDataPath.Type;
import
org.apache.shardingsphere.test.e2e.framework.database.DatabaseAssertionMetaData;
@@ -82,17 +83,19 @@ public abstract class BaseDMLE2EIT {
}
}
- protected final void assertDataSet(final SingleE2EContainerComposer
containerComposer, final int actualUpdateCount, final DatabaseType
databaseType) throws SQLException {
+ protected final void assertDataSet(final SingleE2EContainerComposer
containerComposer, final int actualUpdateCount, final AssertionTestParameter
testParam) throws SQLException {
assertThat(actualUpdateCount,
is(containerComposer.getDataSet().getUpdateCount()));
for (DataSetMetaData each :
containerComposer.getDataSet().getMetaDataList()) {
- assertDataSet(containerComposer, each, databaseType);
+ assertDataSet(containerComposer, each, testParam);
}
}
- private void assertDataSet(final SingleE2EContainerComposer
containerComposer, final DataSetMetaData expectedDataSetMetaData, final
DatabaseType databaseType) throws SQLException {
+ private void assertDataSet(final SingleE2EContainerComposer
containerComposer, final DataSetMetaData expectedDataSetMetaData, final
AssertionTestParameter testParam) throws SQLException {
+ Map<String, DatabaseType> databaseTypes =
DatabaseEnvironmentManager.getDatabaseTypes(testParam.getScenario(),
testParam.getDatabaseType());
for (String each :
InlineExpressionParserFactory.newInstance(expectedDataSetMetaData.getDataNodes()).splitAndEvaluate())
{
DataNode dataNode = new DataNode(each);
DataSource dataSource =
containerComposer.getActualDataSourceMap().get(dataNode.getDataSourceName());
+ DatabaseType databaseType =
databaseTypes.get(dataNode.getDataSourceName());
try (
Connection connection = dataSource.getConnection();
PreparedStatement preparedStatement =
connection.prepareStatement(generateFetchActualDataSQL(containerComposer.getActualDataSourceMap(),
dataNode, databaseType))) {
@@ -104,7 +107,7 @@ public abstract class BaseDMLE2EIT {
private void assertDataSet(final PreparedStatement
actualPreparedStatement, final DataSetMetaData expectedDataSetMetaData, final
List<DataSetRow> expectedDataSetRows,
final DatabaseType databaseType) throws
SQLException {
try (ResultSet actualResultSet =
actualPreparedStatement.executeQuery()) {
- assertMetaData(actualResultSet.getMetaData(),
expectedDataSetMetaData.getColumns(), databaseType);
+ assertMetaData(actualResultSet.getMetaData(),
expectedDataSetMetaData.getColumns());
assertRows(actualResultSet, expectedDataSetRows, databaseType);
}
}
@@ -137,7 +140,7 @@ public abstract class BaseDMLE2EIT {
return String.format("SELECT * FROM %s", dataNode.getTableName());
}
- private void assertMetaData(final ResultSetMetaData actual, final
Collection<DataSetColumn> expected, final DatabaseType databaseType) throws
SQLException {
+ private void assertMetaData(final ResultSetMetaData actual, final
Collection<DataSetColumn> expected) throws SQLException {
assertThat(actual.getColumnCount(), is(expected.size()));
int index = 1;
for (DataSetColumn each : expected) {
@@ -194,7 +197,7 @@ public abstract class BaseDMLE2EIT {
return;
}
assertThat("Only support single table for DML.",
containerComposer.getGeneratedKeyDataSet().getMetaDataList().size(), is(1));
- assertMetaData(generatedKeys.getMetaData(),
containerComposer.getGeneratedKeyDataSet().getMetaDataList().get(0).getColumns(),
databaseType);
+ assertMetaData(generatedKeys.getMetaData(),
containerComposer.getGeneratedKeyDataSet().getMetaDataList().get(0).getColumns());
assertRows(generatedKeys,
containerComposer.getGeneratedKeyDataSet().getRows(), databaseType);
}
}
diff --git
a/test/e2e/sql/src/test/java/org/apache/shardingsphere/test/e2e/engine/type/dml/GeneralDMLE2EIT.java
b/test/e2e/sql/src/test/java/org/apache/shardingsphere/test/e2e/engine/type/dml/GeneralDMLE2EIT.java
index 3971140e9ab..634d8895416 100644
---
a/test/e2e/sql/src/test/java/org/apache/shardingsphere/test/e2e/engine/type/dml/GeneralDMLE2EIT.java
+++
b/test/e2e/sql/src/test/java/org/apache/shardingsphere/test/e2e/engine/type/dml/GeneralDMLE2EIT.java
@@ -57,7 +57,7 @@ class GeneralDMLE2EIT extends BaseDMLE2EIT {
? executeUpdateForStatement(containerComposer, connection)
: executeUpdateForPreparedStatement(containerComposer,
connection);
}
- assertDataSet(containerComposer, actualUpdateCount,
testParam.getDatabaseType());
+ assertDataSet(containerComposer, actualUpdateCount, testParam);
}
private int executeUpdateForStatement(final SingleE2EContainerComposer
containerComposer, final Connection connection) throws SQLException {
@@ -91,7 +91,7 @@ class GeneralDMLE2EIT extends BaseDMLE2EIT {
? executeForStatement(containerComposer, connection)
: executeForPreparedStatement(containerComposer,
connection);
}
- assertDataSet(containerComposer, actualUpdateCount,
testParam.getDatabaseType());
+ assertDataSet(containerComposer, actualUpdateCount, testParam);
}
private int executeForStatement(final SingleE2EContainerComposer
containerComposer, final Connection connection) throws SQLException {