src/test/java/org/embulk/input/oracle/OracleTests.java in embulk-input-oracle-0.8.2 vs src/test/java/org/embulk/input/oracle/OracleTests.java in embulk-input-oracle-0.8.3
- old
+ new
@@ -1,44 +1,44 @@
package org.embulk.input.oracle;
-import static java.util.Locale.ENGLISH;
+import com.google.common.base.Throwables;
+import com.google.common.io.ByteStreams;
+import org.embulk.config.ConfigSource;
+import org.embulk.test.EmbulkTests;
+import org.embulk.test.TestingEmbulk;
import java.io.IOException;
import java.nio.charset.Charset;
import java.nio.file.Files;
import java.nio.file.Path;
import java.util.Arrays;
-import org.embulk.config.ConfigSource;
-import org.embulk.test.EmbulkTests;
-import org.embulk.test.TestingEmbulk;
+import static java.util.Locale.ENGLISH;
-import com.google.common.base.Throwables;
-import com.google.common.io.ByteStreams;
-
public class OracleTests
{
public static ConfigSource baseConfig()
{
return EmbulkTests.config("EMBULK_INPUT_ORACLE_TEST_CONFIG");
}
public static void execute(TestingEmbulk embulk, String sql) throws IOException
- {
+{
Path sqlFile = embulk.createTempFile("sql");
Files.write(sqlFile, Arrays.asList(sql), Charset.forName("UTF8"));
ConfigSource config = baseConfig();
String host = config.get(String.class, "host");
String port = config.get(String.class, "port", "1521");
String user = config.get(String.class, "user");
String password = config.get(String.class, "password");
String database = config.get(String.class, "database");
+
ProcessBuilder pb = new ProcessBuilder(
- "SQLPLUS",
+ "sql",
user + "/" + password + "@" + host + ":" + port + "/" + database,
"@" + sqlFile.toFile().getAbsolutePath());
- pb.environment().put("NLS_LANG", "American_America.UTF8");
+ pb.environment().put("JAVA_TOOL_OPTIONS", "-Dfile.encoding=UTF8");
pb.redirectErrorStream(true);
int code;
try {
Process process = pb.start();
ByteStreams.copy(process.getInputStream(), System.out);