src/test/java/org/embulk/output/oracle/OracleOutputPluginTest.java in embulk-output-oracle-0.2.4 vs src/test/java/org/embulk/output/oracle/OracleOutputPluginTest.java in embulk-output-oracle-0.3.0
- old
+ new
@@ -1,161 +1,172 @@
-package org.embulk.output.oracle;
-
-import java.io.File;
-import java.lang.reflect.Method;
-import java.net.URL;
-import java.util.ArrayList;
-import java.util.List;
-
-import org.junit.BeforeClass;
-import org.junit.Test;
-
-
-public class OracleOutputPluginTest
-{
- private static class NamedObject
- {
- public final String name;
- public final Object value;
- public NamedObject(String name, Object value)
- {
- this.name = name;
- this.value = value;
- }
- }
-
- private static List<NamedObject> testObjects = new ArrayList<NamedObject>();
- private static NamedObject test12c;
- private static NamedObject test11g;
-
- @BeforeClass
- public static void beforeClass() throws Exception
- {
- if (System.getProperty("path.separator").equals(";")) {
- // forw Windows
- System.setProperty("file.encoding", "MS932");
- }
-
- test12c = createTest("/driver/12c/ojdbc7.jar");
- if (test12c == null) {
- System.out.println("Warning: you should put ojdbc7.jar (version 12c) on 'test/resources/driver/12c' directory.");
- } else {
- testObjects.add(test12c);
- }
-
- test11g = createTest("/driver/11g/ojdbc6.jar");
- if (test11g == null) {
- System.out.println("Warning: you should put ojdbc6.jar (version 11g Release 2) on 'test/resources/driver/11g' directory.");
- } else {
- testObjects.add(test11g);
- }
- }
-
- private static NamedObject createTest(String jdbcDriverPath) throws Exception
- {
- String[] classPaths = System.getProperty("java.class.path").split(System.getProperty("path.separator"));
- List<URL> urls = new ArrayList<URL>();
- for (String classPath : classPaths) {
- urls.add(new File(classPath).toURI().toURL());
- }
- // load Oracle JDBC driver dynamically, in order to enable to build without the driver.
- URL url = OracleOutputPluginTest.class.getResource(jdbcDriverPath);
- if (url == null) {
- return null;
- }
-
- urls.add(url);
- ClassLoader classLoader = new ChildFirstClassLoader(urls, OracleOutputPluginTest.class.getClassLoader());
- Thread.currentThread().setContextClassLoader(classLoader);
-
- Class<?> testClass = classLoader.loadClass(OracleOutputPluginTest.class.getName() + "Impl");
- final Object testObject = testClass.newInstance();
- final String version = (String)invoke(testObject, "beforeClass");
- if (version == null) {
- return null;
- }
- return new NamedObject(version, testObject);
- }
-
- private static void invoke(String methodName) throws Exception
- {
- //invoke(test12c, methodName);
- for (NamedObject testObject : testObjects) {
- invoke(testObject, methodName);
- }
- }
-
- private static Object invoke(NamedObject testObject, String methodName) throws Exception
- {
- if (testObject != null) {
- System.out.println("*** " + testObject.name + " ***");
- return invoke(testObject.value, methodName);
- }
- return null;
- }
-
- private static Object invoke(Object testObject, String methodName) throws Exception
- {
- if (testObject != null) {
- Thread.currentThread().setContextClassLoader(testObject.getClass().getClassLoader());
- Method method = testObject.getClass().getMethod(methodName);
- return method.invoke(testObject);
- }
- return null;
- }
-
- @Test
- public void testInsert() throws Exception
- {
- invoke("testInsert");
- }
-
- @Test
- public void testInsertCreate() throws Exception
- {
- invoke("testInsertCreate");
- }
-
- @Test
- public void testInsertDirect() throws Exception
- {
- // ArrayIndexOutOfBoundsException thrown if using 12c driver.
- invoke(test11g, "testInsertDirect");
- }
-
- @Test
- public void testInsertOCI() throws Exception
- {
- invoke("testInsertOCI");
- }
-
- @Test
- public void testInsertOCISplit() throws Exception
- {
- invoke("testInsertOCISplit");
- }
-
- @Test
- public void testUrl() throws Exception
- {
- invoke("testUrl");
- }
-
- @Test
- public void testReplace() throws Exception
- {
- invoke("testReplace");
- }
-
- @Test
- public void testReplaceLongName() throws Exception
- {
- invoke("testReplaceLongName");
- }
-
- @Test
- public void testReplaceCreate() throws Exception
- {
- invoke("testReplaceCreate");
- }
-
-}
+package org.embulk.output.oracle;
+
+import java.io.File;
+import java.lang.reflect.Method;
+import java.net.URL;
+import java.util.ArrayList;
+import java.util.List;
+
+import org.junit.BeforeClass;
+import org.junit.Test;
+
+
+public class OracleOutputPluginTest
+{
+ private static class NamedObject
+ {
+ public final String name;
+ public final Object value;
+ public NamedObject(String name, Object value)
+ {
+ this.name = name;
+ this.value = value;
+ }
+ }
+
+ private static List<NamedObject> testObjects = new ArrayList<NamedObject>();
+ private static NamedObject test12c;
+ private static NamedObject test11g;
+
+ @BeforeClass
+ public static void beforeClass() throws Exception
+ {
+ if (System.getProperty("path.separator").equals(";")) {
+ // forw Windows
+ System.setProperty("file.encoding", "MS932");
+ }
+
+ test12c = createTest("/driver/12c/ojdbc7.jar");
+ if (test12c == null) {
+ System.out.println("Warning: you should put ojdbc7.jar (version 12c) on 'test/resources/driver/12c' directory.");
+ } else {
+ testObjects.add(test12c);
+ }
+
+ test11g = createTest("/driver/11g/ojdbc6.jar");
+ if (test11g == null) {
+ System.out.println("Warning: you should put ojdbc6.jar (version 11g Release 2) on 'test/resources/driver/11g' directory.");
+ } else {
+ testObjects.add(test11g);
+ }
+ }
+
+ private static NamedObject createTest(String jdbcDriverPath) throws Exception
+ {
+ String[] classPaths = System.getProperty("java.class.path").split(System.getProperty("path.separator"));
+ List<URL> urls = new ArrayList<URL>();
+ for (String classPath : classPaths) {
+ urls.add(new File(classPath).toURI().toURL());
+ }
+ // load Oracle JDBC driver dynamically, in order to enable to build without the driver.
+ URL url = OracleOutputPluginTest.class.getResource(jdbcDriverPath);
+ if (url == null) {
+ return null;
+ }
+
+ urls.add(url);
+ ClassLoader classLoader = new ChildFirstClassLoader(urls, OracleOutputPluginTest.class.getClassLoader());
+ Thread.currentThread().setContextClassLoader(classLoader);
+
+ Class<?> testClass = classLoader.loadClass(OracleOutputPluginTest.class.getName() + "Impl");
+ final Object testObject = testClass.newInstance();
+ final String version = (String)invoke(testObject, "beforeClass");
+ if (version == null) {
+ return null;
+ }
+ return new NamedObject(version, testObject);
+ }
+
+ private static void invoke(String methodName) throws Exception
+ {
+ //invoke(test12c, methodName);
+ for (NamedObject testObject : testObjects) {
+ invoke(testObject, methodName);
+ }
+ }
+
+ private static Object invoke(NamedObject testObject, String methodName) throws Exception
+ {
+ if (testObject != null) {
+ System.out.println("*** " + testObject.name + " ***");
+ return invoke(testObject.value, methodName);
+ }
+ return null;
+ }
+
+ private static Object invoke(Object testObject, String methodName) throws Exception
+ {
+ if (testObject != null) {
+ Thread.currentThread().setContextClassLoader(testObject.getClass().getClassLoader());
+ Method method = testObject.getClass().getMethod(methodName);
+ return method.invoke(testObject);
+ }
+ return null;
+ }
+
+ @Test
+ public void testInsert() throws Exception
+ {
+ invoke("testInsert");
+ }
+
+ @Test
+ public void testInsertCreate() throws Exception
+ {
+ invoke("testInsertCreate");
+ }
+
+ @Test
+ public void testInsertDirect() throws Exception
+ {
+ // ArrayIndexOutOfBoundsException thrown if using 12c driver.
+ invoke(test11g, "testInsertDirect");
+ }
+
+ @Test
+ public void testInsertOCI() throws Exception
+ {
+ invoke("testInsertOCI");
+ }
+
+ @Test
+ public void testInsertOCISplit() throws Exception
+ {
+ invoke("testInsertOCISplit");
+ }
+
+ @Test
+ public void testUrl() throws Exception
+ {
+ invoke("testUrl");
+ }
+
+ @Test
+ public void testReplace() throws Exception
+ {
+ invoke("testReplace");
+ }
+
+ @Test
+ public void testReplaceLongName() throws Exception
+ {
+ invoke("testReplaceLongName");
+ }
+
+ @Test
+ public void testReplaceLongNameMultibyte() throws Exception
+ {
+ invoke("testReplaceLongNameMultibyte");
+ }
+
+ @Test
+ public void testReplaceCreate() throws Exception
+ {
+ invoke("testReplaceCreate");
+ }
+
+ @Test
+ public void testStringTimestamp() throws Exception
+ {
+ invoke("testStringTimestamp");
+ }
+}