[Task-3]-updated java11 and junit5

This commit is contained in:
Gangadhar 2020-10-17 15:08:21 +05:30
parent ccd7320be5
commit e8fb5b6181
28 changed files with 873 additions and 798 deletions

View file

@ -1,7 +1,8 @@
package net.forwardfire.tpquery.store.executor.jdbc;
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertTrue;
import static org.junit.jupiter.api.Assertions.assertEquals;
import static org.junit.jupiter.api.Assertions.assertThrows;
import static org.junit.jupiter.api.Assertions.assertTrue;
import java.sql.Connection;
import java.sql.DriverManager;
@ -11,20 +12,17 @@ import java.sql.SQLException;
import java.util.HashMap;
import java.util.Map;
import net.forwardfire.tpquery.TPQManager;
import net.forwardfire.tpquery.TPQFactory;
import net.forwardfire.tpquery.store.executor.jdbc.SQLExceptionRuntime;
import net.forwardfire.tpquery.store.executor.jdbc.TPQExecutorJdbc;
import org.junit.BeforeClass;
import org.junit.Test;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;
import org.slf4j.LoggerFactory;
import ch.qos.logback.classic.LoggerContext;
import net.forwardfire.tpquery.TPQFactory;
import net.forwardfire.tpquery.TPQManager;
public class TPQExecutorJdbcTest {
@BeforeClass
@BeforeEach
public static void setupLogging() {
LoggerContext lc = (LoggerContext) LoggerFactory.getILoggerFactory();
lc.reset(); // disable logging
@ -84,94 +82,104 @@ public class TPQExecutorJdbcTest {
}
}
@Test(expected=SQLExceptionRuntime.class)
@Test
public void testExecuteUpdateFail() throws Exception {
try (Connection connection = DriverManager.getConnection("jdbc:h2:mem:test;")) {
TPQManager store = TPQFactory
.createManagerBuilder()
.createQuerySet("junit", "jar:junit:mem")
.setLanguage(TPQFactory.StatementLanguage.SQL)
.createQuery("createTable").appendText("CREATE TABLE test_table (id serial,data int)").build()
.createQuery("insertData").appendText("INSERT INTO test_table (data) VALUES (0)").build()
.createQuery("queryFail").appendText("update test_table tt set tt.data=10/(SELECT sum(t1.data) FROM test_table t1)").build()
.build()
.build();
TPQExecutorJdbc exe = new TPQExecutorJdbc(store.getQueryExecutorContext());
exe.executeUpdate(connection, "junit.createTable");
exe.executeUpdate(connection, "junit.insertData");
exe.executeUpdate(connection, "junit.queryFail"); // runtime data failure, as prepared will go correctly
assertThrows(SQLExceptionRuntime.class, () -> {
try (Connection connection = DriverManager.getConnection("jdbc:h2:mem:test;")) {
TPQManager store = TPQFactory
.createManagerBuilder()
.createQuerySet("junit", "jar:junit:mem")
.setLanguage(TPQFactory.StatementLanguage.SQL)
.createQuery("createTable").appendText("CREATE TABLE test_table (id serial,data int)").build()
.createQuery("insertData").appendText("INSERT INTO test_table (data) VALUES (0)").build()
.createQuery("queryFail").appendText("update test_table tt set tt.data=10/(SELECT sum(t1.data) FROM test_table t1)").build()
.build()
.build();
TPQExecutorJdbc exe = new TPQExecutorJdbc(store.getQueryExecutorContext());
exe.executeUpdate(connection, "junit.createTable");
exe.executeUpdate(connection, "junit.insertData");
exe.executeUpdate(connection, "junit.queryFail"); // runtime data failure, as prepared will go correctly
}
});
}
@Test(expected=SQLExceptionRuntime.class)
@Test
public void testExecuteSelectFail() throws Exception {
try (Connection connection = DriverManager.getConnection("jdbc:h2:mem:test;")) {
TPQManager store = TPQFactory
.createManagerBuilder()
.createQuerySet("junit", "jar:junit:mem")
.setLanguage(TPQFactory.StatementLanguage.SQL)
.createQuery("createTable").appendText("CREATE TABLE test_table (id serial,data int)").build()
.createQuery("insertData").appendText("INSERT INTO test_table (data) VALUES (0)").build()
.createQuery("queryFail").appendText("select tt.* from test_table tt where tt.data=10/(SELECT sum(t1.data) FROM test_table t1)").build()
.build()
.build();
TPQExecutorJdbc exe = new TPQExecutorJdbc(store.getQueryExecutorContext());
exe.executeUpdate(connection, "junit.createTable");
exe.executeUpdate(connection, "junit.insertData");
exe.execute(connection, "junit.queryFail"); // runtime data failure, as prepared will go correctly
}
assertThrows(SQLExceptionRuntime.class, () -> {
try (Connection connection = DriverManager.getConnection("jdbc:h2:mem:test;")) {
TPQManager store = TPQFactory
.createManagerBuilder()
.createQuerySet("junit", "jar:junit:mem")
.setLanguage(TPQFactory.StatementLanguage.SQL)
.createQuery("createTable").appendText("CREATE TABLE test_table (id serial,data int)").build()
.createQuery("insertData").appendText("INSERT INTO test_table (data) VALUES (0)").build()
.createQuery("queryFail").appendText("select tt.* from test_table tt where tt.data=10/(SELECT sum(t1.data) FROM test_table t1)").build()
.build()
.build();
TPQExecutorJdbc exe = new TPQExecutorJdbc(store.getQueryExecutorContext());
exe.executeUpdate(connection, "junit.createTable");
exe.executeUpdate(connection, "junit.insertData");
exe.execute(connection, "junit.queryFail"); // runtime data failure, as prepared will go correctly
}
});
}
@Test(expected=SQLExceptionRuntime.class)
@Test
public void testExecuteSelectFailPrepare() throws Exception {
try (Connection connection = DriverManager.getConnection("jdbc:h2:mem:test;")) {
TPQManager store = TPQFactory.createManagerBuilder()
.createQuerySet("junit", "jar:junit:mem:testcaseFail")
.setLanguage(TPQFactory.StatementLanguage.SQL)
.createQuery("sql-fail").appendText("select * from article").build()
.build()
.build();
TPQExecutorJdbc exe = new TPQExecutorJdbc(store.getQueryExecutorContext());
exe.execute(connection, "junit.sql-fail");
}
assertThrows(SQLExceptionRuntime.class, () -> {
try (Connection connection = DriverManager.getConnection("jdbc:h2:mem:test;")) {
TPQManager store = TPQFactory.createManagerBuilder()
.createQuerySet("junit", "jar:junit:mem:testcaseFail")
.setLanguage(TPQFactory.StatementLanguage.SQL)
.createQuery("sql-fail").appendText("select * from article").build()
.build()
.build();
TPQExecutorJdbc exe = new TPQExecutorJdbc(store.getQueryExecutorContext());
exe.execute(connection, "junit.sql-fail");
}
});
}
@Test(expected=SQLExceptionRuntime.class)
@Test
public void testTimeoutFail() throws Exception {
try (Connection connection = DriverManager.getConnection("jdbc:h2:mem:test;")) {
TPQManager store = TPQFactory.createManagerBuilder()
.createQuerySet("junit", "jar:junit:mem:test")
.setLanguage(TPQFactory.StatementLanguage.SQL)
.createQuery("createTable").appendText("CREATE TABLE test_table (id serial,data int)").build()
.createQuery("test").appendText("select * from test_table").build()
.build()
.build();
TPQExecutorJdbc exe = new TPQExecutorJdbc(store.getQueryExecutorContext());
exe.executeUpdate(connection, "junit.createTable");
PreparedStatement ps = exe.createPreparedStatement(connection, "junit.test", null);
ps.close();
exe.prepareTimeout(ps, 123);
}
assertThrows(SQLExceptionRuntime.class, () -> {
try (Connection connection = DriverManager.getConnection("jdbc:h2:mem:test;")) {
TPQManager store = TPQFactory.createManagerBuilder()
.createQuerySet("junit", "jar:junit:mem:test")
.setLanguage(TPQFactory.StatementLanguage.SQL)
.createQuery("createTable").appendText("CREATE TABLE test_table (id serial,data int)").build()
.createQuery("test").appendText("select * from test_table").build()
.build()
.build();
TPQExecutorJdbc exe = new TPQExecutorJdbc(store.getQueryExecutorContext());
exe.executeUpdate(connection, "junit.createTable");
PreparedStatement ps = exe.createPreparedStatement(connection, "junit.test", null);
ps.close();
exe.prepareTimeout(ps, 123);
}
});
}
@Test(expected=SQLExceptionRuntime.class)
@Test
public void testParameterFail() throws Exception {
try (Connection connection = DriverManager.getConnection("jdbc:h2:mem:test;")) {
TPQManager store = TPQFactory.createManagerBuilder()
.createQuerySet("junit", "jar:junit:mem:test")
.setLanguage(TPQFactory.StatementLanguage.SQL)
.createQuery("createTable").appendText("CREATE TABLE test_table (id serial,data int)").build()
.createQuery("test").appendText("select * from test_table").build()
.build()
.build();
TPQExecutorJdbc exe = new TPQExecutorJdbc(store.getQueryExecutorContext());
exe.executeUpdate(connection, "junit.createTable");
PreparedStatement ps = exe.createPreparedStatement(connection, "junit.test", null);
exe.prepareParameterValue(ps, 1, 123);
}
assertThrows(SQLExceptionRuntime.class, () -> {
try (Connection connection = DriverManager.getConnection("jdbc:h2:mem:test;")) {
TPQManager store = TPQFactory.createManagerBuilder()
.createQuerySet("junit", "jar:junit:mem:test")
.setLanguage(TPQFactory.StatementLanguage.SQL)
.createQuery("createTable").appendText("CREATE TABLE test_table (id serial,data int)").build()
.createQuery("test").appendText("select * from test_table").build()
.build()
.build();
TPQExecutorJdbc exe = new TPQExecutorJdbc(store.getQueryExecutorContext());
exe.executeUpdate(connection, "junit.createTable");
PreparedStatement ps = exe.createPreparedStatement(connection, "junit.test", null);
exe.prepareParameterValue(ps, 1, 123);
}
});
}
@Test