This is an automated email from the ASF dual-hosted git repository.
tuichenchuxin 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 04525dc4129 Fix the transaction IT test assert usage specification
(#22764)
04525dc4129 is described below
commit 04525dc41299781e97850871671b8e03a6f779bb
Author: ZhangCheng <[email protected]>
AuthorDate: Fri Dec 9 16:23:44 2022 +0800
Fix the transaction IT test assert usage specification (#22764)
---
.../cases/autocommit/MySQLAutoCommitTestCase.java | 14 ++++----------
.../autocommit/PostgresSQLAutoCommitTestCase.java | 14 ++++----------
.../ExceptionInTransactionTestCase.java | 2 --
.../cases/cursor/OpenGaussCursorTestCase.java | 19 +++++--------------
.../cases/nested/NestedTransactionTestCase.java | 16 +++++++++-------
.../cases/readonly/SetReadOnlyTestCase.java | 6 ++----
.../cases/truncate/MySQLXATruncateTestCase.java | 21 +++++++++++++--------
7 files changed, 37 insertions(+), 55 deletions(-)
diff --git
a/test/e2e/transaction/src/test/java/org/apache/shardingsphere/test/e2e/transaction/cases/autocommit/MySQLAutoCommitTestCase.java
b/test/e2e/transaction/src/test/java/org/apache/shardingsphere/test/e2e/transaction/cases/autocommit/MySQLAutoCommitTestCase.java
index b791428d190..e674c7f1bd2 100644
---
a/test/e2e/transaction/src/test/java/org/apache/shardingsphere/test/e2e/transaction/cases/autocommit/MySQLAutoCommitTestCase.java
+++
b/test/e2e/transaction/src/test/java/org/apache/shardingsphere/test/e2e/transaction/cases/autocommit/MySQLAutoCommitTestCase.java
@@ -25,11 +25,11 @@ import
org.apache.shardingsphere.test.e2e.transaction.engine.constants.Transacti
import javax.sql.DataSource;
import java.sql.Connection;
-import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.concurrent.TimeUnit;
-import static org.junit.Assert.fail;
+import static org.junit.Assert.assertFalse;
+import static org.junit.Assert.assertTrue;
/**
* MySQL auto commit transaction integration test.
@@ -54,15 +54,9 @@ public final class MySQLAutoCommitTestCase extends
BaseTransactionTestCase {
executeWithLog(connection1, "set autocommit=0;");
executeWithLog(connection2, "begin;");
executeWithLog(connection1, "insert into account(id, balance,
transaction_id) values(1, 100, 1)");
- ResultSet emptyResultSet = executeQueryWithLog(connection2, "select *
from account;");
- if (emptyResultSet.next()) {
- fail("There should not be result.");
- }
+ assertFalse(executeQueryWithLog(connection2, "select * from
account;").next());
executeWithLog(connection1, "commit;");
ThreadUtil.sleep(1, TimeUnit.SECONDS);
- ResultSet notEmptyResultSet = executeQueryWithLog(connection2, "select
* from account");
- if (!notEmptyResultSet.next()) {
- fail("There should be result.");
- }
+ assertTrue(executeQueryWithLog(connection2, "select * from
account").next());
}
}
diff --git
a/test/e2e/transaction/src/test/java/org/apache/shardingsphere/test/e2e/transaction/cases/autocommit/PostgresSQLAutoCommitTestCase.java
b/test/e2e/transaction/src/test/java/org/apache/shardingsphere/test/e2e/transaction/cases/autocommit/PostgresSQLAutoCommitTestCase.java
index 90cfadbd7de..5cba86ae5fe 100644
---
a/test/e2e/transaction/src/test/java/org/apache/shardingsphere/test/e2e/transaction/cases/autocommit/PostgresSQLAutoCommitTestCase.java
+++
b/test/e2e/transaction/src/test/java/org/apache/shardingsphere/test/e2e/transaction/cases/autocommit/PostgresSQLAutoCommitTestCase.java
@@ -25,11 +25,11 @@ import
org.apache.shardingsphere.test.e2e.transaction.engine.constants.Transacti
import javax.sql.DataSource;
import java.sql.Connection;
-import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.concurrent.TimeUnit;
-import static org.junit.Assert.fail;
+import static org.junit.Assert.assertFalse;
+import static org.junit.Assert.assertTrue;
/**
* PostgresSQL auto commit transaction integration test.
@@ -52,16 +52,10 @@ public final class PostgresSQLAutoCommitTestCase extends
BaseTransactionTestCase
executeWithLog(connection1, "begin;");
executeWithLog(connection2, "begin;");
executeWithLog(connection1, "insert into account(id, balance,
transaction_id) values(1, 100, 1)");
- ResultSet emptyResultSet = executeQueryWithLog(connection2, "select *
from account;");
- if (emptyResultSet.next()) {
- fail("There should not be result.");
- }
+ assertFalse(executeQueryWithLog(connection2, "select * from
account;").next());
executeWithLog(connection1, "commit;");
ThreadUtil.sleep(1, TimeUnit.SECONDS);
- ResultSet notEmptyResultSet = executeQueryWithLog(connection2, "select
* from account");
- if (!notEmptyResultSet.next()) {
- fail("There should be result.");
- }
+ assertTrue(executeQueryWithLog(connection2, "select * from
account").next());
executeWithLog(connection2, "commit;");
}
}
diff --git
a/test/e2e/transaction/src/test/java/org/apache/shardingsphere/test/e2e/transaction/cases/commitrollback/ExceptionInTransactionTestCase.java
b/test/e2e/transaction/src/test/java/org/apache/shardingsphere/test/e2e/transaction/cases/commitrollback/ExceptionInTransactionTestCase.java
index f6fadd070f5..b34f65ba8f5 100644
---
a/test/e2e/transaction/src/test/java/org/apache/shardingsphere/test/e2e/transaction/cases/commitrollback/ExceptionInTransactionTestCase.java
+++
b/test/e2e/transaction/src/test/java/org/apache/shardingsphere/test/e2e/transaction/cases/commitrollback/ExceptionInTransactionTestCase.java
@@ -63,7 +63,6 @@ public final class ExceptionInTransactionTestCase extends
BaseTransactionTestCas
}
}
Thread queryThread = new Thread(() -> {
- log.info("Execute query in new thread.");
try (Connection connection2 = getDataSource().getConnection()) {
assertAccountRowCount(connection2, 0);
} catch (final SQLException ignored) {
@@ -72,7 +71,6 @@ public final class ExceptionInTransactionTestCase extends
BaseTransactionTestCas
queryThread.start();
try {
queryThread.join();
- log.info("ExceptionInTransactionTestCase test over.");
} catch (final InterruptedException ignored) {
}
}
diff --git
a/test/e2e/transaction/src/test/java/org/apache/shardingsphere/test/e2e/transaction/cases/cursor/OpenGaussCursorTestCase.java
b/test/e2e/transaction/src/test/java/org/apache/shardingsphere/test/e2e/transaction/cases/cursor/OpenGaussCursorTestCase.java
index bf67b2ad052..6af1fd11232 100644
---
a/test/e2e/transaction/src/test/java/org/apache/shardingsphere/test/e2e/transaction/cases/cursor/OpenGaussCursorTestCase.java
+++
b/test/e2e/transaction/src/test/java/org/apache/shardingsphere/test/e2e/transaction/cases/cursor/OpenGaussCursorTestCase.java
@@ -35,6 +35,7 @@ import java.util.Objects;
import static org.hamcrest.CoreMatchers.is;
import static org.hamcrest.MatcherAssert.assertThat;
+import static org.junit.Assert.assertFalse;
import static org.junit.Assert.fail;
/**
@@ -175,31 +176,21 @@ public final class OpenGaussCursorTestCase extends
BaseTransactionTestCase {
private void fetch(final Connection connection, final int expectedId)
throws SQLException {
ResultSet resultSet = executeQueryWithLog(connection, "fetch test;");
if (resultSet.next()) {
- int id = resultSet.getInt("id");
- assertThat(id, is(expectedId));
+ assertThat(resultSet.getInt("id"), is(expectedId));
} else {
fail("Expected has result.");
}
}
private void fetchOver(final Connection connection) throws SQLException {
- ResultSet resultSet = executeQueryWithLog(connection, "fetch test;");
- while (resultSet.next()) {
- fail("Expected fetch nothing.");
- }
+ assertFalse(executeQueryWithLog(connection, "fetch test;").next());
}
private void fetchForwardOver(final Connection connection) throws
SQLException {
- ResultSet resultSet = executeQueryWithLog(connection, "fetch forward
from test;");
- while (resultSet.next()) {
- fail("Expected fetch nothing.");
- }
+ assertFalse(executeQueryWithLog(connection, "fetch forward from
test;").next());
}
private void fetchForwardAllOver(final Connection connection) throws
SQLException {
- ResultSet resultSet = executeQueryWithLog(connection, "fetch forward
all from test;");
- while (resultSet.next()) {
- fail("Expected fetch nothing.");
- }
+ assertFalse(executeQueryWithLog(connection, "fetch forward all from
test;").next());
}
}
diff --git
a/test/e2e/transaction/src/test/java/org/apache/shardingsphere/test/e2e/transaction/cases/nested/NestedTransactionTestCase.java
b/test/e2e/transaction/src/test/java/org/apache/shardingsphere/test/e2e/transaction/cases/nested/NestedTransactionTestCase.java
index 6cdf6512e81..6979fcc2ed2 100644
---
a/test/e2e/transaction/src/test/java/org/apache/shardingsphere/test/e2e/transaction/cases/nested/NestedTransactionTestCase.java
+++
b/test/e2e/transaction/src/test/java/org/apache/shardingsphere/test/e2e/transaction/cases/nested/NestedTransactionTestCase.java
@@ -18,16 +18,18 @@
package org.apache.shardingsphere.test.e2e.transaction.cases.nested;
import
org.apache.shardingsphere.driver.jdbc.core.connection.ShardingSphereConnection;
+import
org.apache.shardingsphere.test.e2e.env.container.atomic.constants.AdapterContainerConstants;
import
org.apache.shardingsphere.test.e2e.transaction.cases.base.BaseTransactionTestCase;
import
org.apache.shardingsphere.test.e2e.transaction.engine.base.TransactionBaseE2EIT;
import
org.apache.shardingsphere.test.e2e.transaction.engine.base.TransactionTestCase;
-import
org.apache.shardingsphere.test.e2e.env.container.atomic.constants.AdapterContainerConstants;
import org.apache.shardingsphere.transaction.api.TransactionType;
-import org.junit.Assert;
import javax.sql.DataSource;
import java.sql.SQLException;
+import static org.junit.Assert.assertFalse;
+import static org.junit.Assert.assertTrue;
+
/**
* Nested transaction test case.
*/
@@ -41,19 +43,19 @@ public class NestedTransactionTestCase extends
BaseTransactionTestCase {
@Override
protected void executeTest() throws SQLException {
ShardingSphereConnection connection = (ShardingSphereConnection)
getDataSource().getConnection();
- Assert.assertFalse(connection.isHoldTransaction());
+ assertFalse(connection.isHoldTransaction());
connection.setAutoCommit(false);
- Assert.assertTrue(connection.isHoldTransaction());
+ assertTrue(connection.isHoldTransaction());
requiresNewTransaction();
- Assert.assertTrue(connection.isHoldTransaction());
+ assertTrue(connection.isHoldTransaction());
connection.commit();
}
private void requiresNewTransaction() throws SQLException {
ShardingSphereConnection connection = (ShardingSphereConnection)
getDataSource().getConnection();
- Assert.assertFalse(connection.isHoldTransaction());
+ assertFalse(connection.isHoldTransaction());
connection.setAutoCommit(false);
- Assert.assertTrue(connection.isHoldTransaction());
+ assertTrue(connection.isHoldTransaction());
connection.commit();
}
}
diff --git
a/test/e2e/transaction/src/test/java/org/apache/shardingsphere/test/e2e/transaction/cases/readonly/SetReadOnlyTestCase.java
b/test/e2e/transaction/src/test/java/org/apache/shardingsphere/test/e2e/transaction/cases/readonly/SetReadOnlyTestCase.java
index 35070fa01ca..8595d8f2486 100644
---
a/test/e2e/transaction/src/test/java/org/apache/shardingsphere/test/e2e/transaction/cases/readonly/SetReadOnlyTestCase.java
+++
b/test/e2e/transaction/src/test/java/org/apache/shardingsphere/test/e2e/transaction/cases/readonly/SetReadOnlyTestCase.java
@@ -27,7 +27,7 @@ import java.sql.SQLException;
import static org.hamcrest.CoreMatchers.is;
import static org.hamcrest.MatcherAssert.assertThat;
-import static org.junit.Assert.fail;
+import static org.junit.Assert.assertTrue;
/**
* Set read only transaction integration test.
@@ -43,9 +43,7 @@ public abstract class SetReadOnlyTestCase extends
BaseTransactionTestCase {
assertQueryBalance(connection);
executeUpdateWithLog(connection, "update account set balance = 101
where id = 2;");
ResultSet resultSet = executeQueryWithLog(connection, "select * from
account where id = 2");
- if (!resultSet.next()) {
- fail("Should have a result.");
- }
+ assertTrue(resultSet.next());
int balanceResult = resultSet.getInt("balance");
assertThat(String.format("Balance is %s, should be 101.",
balanceResult), balanceResult, is(101));
}
diff --git
a/test/e2e/transaction/src/test/java/org/apache/shardingsphere/test/e2e/transaction/cases/truncate/MySQLXATruncateTestCase.java
b/test/e2e/transaction/src/test/java/org/apache/shardingsphere/test/e2e/transaction/cases/truncate/MySQLXATruncateTestCase.java
index 65ca3e7b08a..35b793d860d 100644
---
a/test/e2e/transaction/src/test/java/org/apache/shardingsphere/test/e2e/transaction/cases/truncate/MySQLXATruncateTestCase.java
+++
b/test/e2e/transaction/src/test/java/org/apache/shardingsphere/test/e2e/transaction/cases/truncate/MySQLXATruncateTestCase.java
@@ -43,6 +43,19 @@ public final class MySQLXATruncateTestCase extends
BaseTransactionTestCase {
super(baseTransactionITCase, dataSource);
}
+ @Override
+ protected void beforeTest() throws SQLException {
+ super.beforeTest();
+ prepare();
+ }
+
+ private void prepare() throws SQLException {
+ Connection connection = getDataSource().getConnection();
+ executeWithLog(connection, "delete from account;");
+ executeWithLog(connection, "insert into account(id, balance,
transaction_id) values(1, 1, 1),(2, 2, 2),(3, 3, 3),(4, 4, 4),(5, 5, 5),(6, 6,
6),(7, 7, 7),(8, 8, 8);");
+ connection.close();
+ }
+
@Override
public void executeTest() throws SQLException {
assertTruncateInMySQLXATransaction();
@@ -50,7 +63,6 @@ public final class MySQLXATruncateTestCase extends
BaseTransactionTestCase {
private void assertTruncateInMySQLXATransaction() throws SQLException {
// TODO This test case may cause bad effects to other test cases in
JDBC adapter
- prepare();
Connection connection = getDataSource().getConnection();
connection.setAutoCommit(false);
assertAccountRowCount(connection, 8);
@@ -66,11 +78,4 @@ public final class MySQLXATruncateTestCase extends
BaseTransactionTestCase {
connection.close();
}
}
-
- private void prepare() throws SQLException {
- Connection connection = getDataSource().getConnection();
- executeWithLog(connection, "delete from account;");
- executeWithLog(connection, "insert into account(id, balance,
transaction_id) values(1, 1, 1),(2, 2, 2),(3, 3, 3),(4, 4, 4),(5, 5, 5),(6, 6,
6),(7, 7, 7),(8, 8, 8);");
- connection.close();
- }
}