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

zhangyonglun 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 beb863f  Print exception context for integration test (#7005)
beb863f is described below

commit beb863f7a49603cd49ca4cdff14b36f1eea5236d
Author: sandynz <[email protected]>
AuthorDate: Mon Aug 24 23:36:42 2020 +0800

    Print exception context for integration test (#7005)
---
 .../test/java/org/apache/shardingsphere/dbtest/engine/BaseIT.java | 6 +++++-
 .../java/org/apache/shardingsphere/dbtest/engine/SingleIT.java    | 4 ++++
 .../org/apache/shardingsphere/dbtest/engine/dcl/GeneralDCLIT.java | 6 ++++++
 .../org/apache/shardingsphere/dbtest/engine/ddl/GeneralDDLIT.java | 3 +++
 .../org/apache/shardingsphere/dbtest/engine/dml/GeneralDMLIT.java | 6 ++++++
 .../org/apache/shardingsphere/dbtest/engine/dql/GeneralDQLIT.java | 6 ++++++
 .../dbtest/env/authority/AuthorityEnvironmentManager.java         | 8 ++++++--
 7 files changed, 36 insertions(+), 3 deletions(-)

diff --git 
a/shardingsphere-integration-test/shardingsphere-test-suite/src/test/java/org/apache/shardingsphere/dbtest/engine/BaseIT.java
 
b/shardingsphere-integration-test/shardingsphere-test-suite/src/test/java/org/apache/shardingsphere/dbtest/engine/BaseIT.java
index 02877c7..f1e88ff 100644
--- 
a/shardingsphere-integration-test/shardingsphere-test-suite/src/test/java/org/apache/shardingsphere/dbtest/engine/BaseIT.java
+++ 
b/shardingsphere-integration-test/shardingsphere-test-suite/src/test/java/org/apache/shardingsphere/dbtest/engine/BaseIT.java
@@ -100,7 +100,11 @@ public abstract class BaseIT {
         if (new File(result).exists()) {
             return result;
         }
-        return Joiner.on("/").join(prefix, "dataset", expectedDataFile);
+        result = Joiner.on("/").join(prefix, "dataset", expectedDataFile);
+        if (new File(result).exists()) {
+            return result;
+        }
+        throw new IllegalArgumentException(String.format("%s not found, 
path=%s, ruleType=%s, databaseType=%s, expectedDataFile=%s", result, path, 
ruleType, databaseType.getName(), expectedDataFile));
     }
     
     protected static void createDatabasesAndTables() {
diff --git 
a/shardingsphere-integration-test/shardingsphere-test-suite/src/test/java/org/apache/shardingsphere/dbtest/engine/SingleIT.java
 
b/shardingsphere-integration-test/shardingsphere-test-suite/src/test/java/org/apache/shardingsphere/dbtest/engine/SingleIT.java
index c8e291b..7f19c1f 100644
--- 
a/shardingsphere-integration-test/shardingsphere-test-suite/src/test/java/org/apache/shardingsphere/dbtest/engine/SingleIT.java
+++ 
b/shardingsphere-integration-test/shardingsphere-test-suite/src/test/java/org/apache/shardingsphere/dbtest/engine/SingleIT.java
@@ -66,4 +66,8 @@ public abstract class SingleIT extends BaseIT {
         return String.format(sql.replace("%", "$").replace("?", "%s"), 
parameters.toArray()).replace("$", "%")
             .replace("%%", "%").replace("'%'", "'%%'");
     }
+    
+    protected void printExceptionContext(final Exception ex) {
+        System.err.println(String.format("ruleType=%s, databaseType=%s, 
expectedDataFile=%s, sql=%s, ex.msg=%s", getRuleType(), 
getDatabaseType().getName(), expectedDataFile, sql, ex.getMessage()));
+    }
 }
diff --git 
a/shardingsphere-integration-test/shardingsphere-test-suite/src/test/java/org/apache/shardingsphere/dbtest/engine/dcl/GeneralDCLIT.java
 
b/shardingsphere-integration-test/shardingsphere-test-suite/src/test/java/org/apache/shardingsphere/dbtest/engine/dcl/GeneralDCLIT.java
index 123ecba..ca4d298 100644
--- 
a/shardingsphere-integration-test/shardingsphere-test-suite/src/test/java/org/apache/shardingsphere/dbtest/engine/dcl/GeneralDCLIT.java
+++ 
b/shardingsphere-integration-test/shardingsphere-test-suite/src/test/java/org/apache/shardingsphere/dbtest/engine/dcl/GeneralDCLIT.java
@@ -52,6 +52,9 @@ public final class GeneralDCLIT extends BaseDCLIT {
             } else {
                 connection.prepareStatement(getSql()).executeUpdate();
             }
+        } catch (final SQLException ex) {
+            printExceptionContext(ex);
+            throw ex;
         }
     }
     
@@ -63,6 +66,9 @@ public final class GeneralDCLIT extends BaseDCLIT {
             } else {
                 connection.prepareStatement(getSql()).execute();
             }
+        } catch (final SQLException ex) {
+            printExceptionContext(ex);
+            throw ex;
         }
     }
 }
diff --git 
a/shardingsphere-integration-test/shardingsphere-test-suite/src/test/java/org/apache/shardingsphere/dbtest/engine/ddl/GeneralDDLIT.java
 
b/shardingsphere-integration-test/shardingsphere-test-suite/src/test/java/org/apache/shardingsphere/dbtest/engine/ddl/GeneralDDLIT.java
index 6487a9f..8bdef80 100644
--- 
a/shardingsphere-integration-test/shardingsphere-test-suite/src/test/java/org/apache/shardingsphere/dbtest/engine/ddl/GeneralDDLIT.java
+++ 
b/shardingsphere-integration-test/shardingsphere-test-suite/src/test/java/org/apache/shardingsphere/dbtest/engine/ddl/GeneralDDLIT.java
@@ -82,6 +82,9 @@ public final class GeneralDDLIT extends BaseDDLIT {
             }
             assertMetadata(connection);
             dropTableIfExisted(connection);
+        } catch (final SQLException ex) {
+            printExceptionContext(ex);
+            throw ex;
         }
     }
 }
diff --git 
a/shardingsphere-integration-test/shardingsphere-test-suite/src/test/java/org/apache/shardingsphere/dbtest/engine/dml/GeneralDMLIT.java
 
b/shardingsphere-integration-test/shardingsphere-test-suite/src/test/java/org/apache/shardingsphere/dbtest/engine/dml/GeneralDMLIT.java
index 68ef469..c1a560e 100644
--- 
a/shardingsphere-integration-test/shardingsphere-test-suite/src/test/java/org/apache/shardingsphere/dbtest/engine/dml/GeneralDMLIT.java
+++ 
b/shardingsphere-integration-test/shardingsphere-test-suite/src/test/java/org/apache/shardingsphere/dbtest/engine/dml/GeneralDMLIT.java
@@ -68,6 +68,9 @@ public final class GeneralDMLIT extends BaseDMLIT {
         int actualUpdateCount;
         try (Connection connection = getDataSource().getConnection()) {
             actualUpdateCount = SQLCaseType.Literal == getCaseType() ? 
executeUpdateForStatement(connection) : 
executeUpdateForPreparedStatement(connection);
+        } catch (final SQLException ex) {
+            printExceptionContext(ex);
+            throw ex;
         }
         assertDataSet(actualUpdateCount);
     }
@@ -100,6 +103,9 @@ public final class GeneralDMLIT extends BaseDMLIT {
         int actualUpdateCount;
         try (Connection connection = getDataSource().getConnection()) {
             actualUpdateCount = SQLCaseType.Literal == getCaseType() ? 
executeForStatement(connection) : executeForPreparedStatement(connection);
+        } catch (final SQLException ex) {
+            printExceptionContext(ex);
+            throw ex;
         }
         assertDataSet(actualUpdateCount);
     }
diff --git 
a/shardingsphere-integration-test/shardingsphere-test-suite/src/test/java/org/apache/shardingsphere/dbtest/engine/dql/GeneralDQLIT.java
 
b/shardingsphere-integration-test/shardingsphere-test-suite/src/test/java/org/apache/shardingsphere/dbtest/engine/dql/GeneralDQLIT.java
index 417e5ad..5df5315 100644
--- 
a/shardingsphere-integration-test/shardingsphere-test-suite/src/test/java/org/apache/shardingsphere/dbtest/engine/dql/GeneralDQLIT.java
+++ 
b/shardingsphere-integration-test/shardingsphere-test-suite/src/test/java/org/apache/shardingsphere/dbtest/engine/dql/GeneralDQLIT.java
@@ -61,6 +61,9 @@ public final class GeneralDQLIT extends BaseDQLIT {
             } else {
                 assertExecuteQueryForPreparedStatement(connection);
             }
+        } catch (final SQLException ex) {
+            printExceptionContext(ex);
+            throw ex;
         }
     }
     
@@ -91,6 +94,9 @@ public final class GeneralDQLIT extends BaseDQLIT {
             } else {
                 assertExecuteForPreparedStatement(connection);
             }
+        } catch (final SQLException ex) {
+            printExceptionContext(ex);
+            throw ex;
         }
     }
     
diff --git 
a/shardingsphere-integration-test/shardingsphere-test-suite/src/test/java/org/apache/shardingsphere/dbtest/env/authority/AuthorityEnvironmentManager.java
 
b/shardingsphere-integration-test/shardingsphere-test-suite/src/test/java/org/apache/shardingsphere/dbtest/env/authority/AuthorityEnvironmentManager.java
index 8c0f70b..1ff10fd 100644
--- 
a/shardingsphere-integration-test/shardingsphere-test-suite/src/test/java/org/apache/shardingsphere/dbtest/env/authority/AuthorityEnvironmentManager.java
+++ 
b/shardingsphere-integration-test/shardingsphere-test-suite/src/test/java/org/apache/shardingsphere/dbtest/env/authority/AuthorityEnvironmentManager.java
@@ -83,8 +83,12 @@ public final class AuthorityEnvironmentManager {
         try (Connection connection = dataSource.getConnection()) {
             for (String each : sqls) {
                 try (Statement statement = connection.createStatement()) {
-                    statement.execute(each);
-                } catch (final SQLException ignored) {
+                    boolean executeRet = statement.execute(each);
+                    if (!executeRet) {
+                        System.err.println("execute '" + each + "' failed");
+                    }
+                } catch (final SQLException ex) {
+                    System.err.println("execute '" + each + "' failed, 
ex.msg=" + ex.getMessage());
                 }
             }
         }

Reply via email to