< prev index next >
jdk/test/tools/launcher/modules/basic/BasicTest.java
Print this page
*** 35,45 ****
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Path;
import java.nio.file.Paths;
! import static jdk.testlibrary.ProcessTools.*;
import org.testng.annotations.BeforeTest;
import org.testng.annotations.Test;
import static org.testng.Assert.*;
--- 35,45 ----
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Path;
import java.nio.file.Paths;
! import jdk.testlibrary.ProcessTools;
import org.testng.annotations.BeforeTest;
import org.testng.annotations.Test;
import static org.testng.Assert.*;
*** 70,102 ****
MODS_DIR.resolve(TEST_MODULE));
assertTrue(compiled, "test module did not compile");
}
/**
* The initial module is loaded from an exploded module
*/
public void testRunWithExplodedModule() throws Exception {
String dir = MODS_DIR.toString();
String subdir = MODS_DIR.resolve(TEST_MODULE).toString();
String mid = TEST_MODULE + "/" + MAIN_CLASS;
! // java -mp mods -m $TESTMODULE/$MAINCLASS
! int exitValue
! = executeTestJava("-mp", dir, "-m", mid)
! .outputTo(System.out)
! .errorTo(System.out)
! .getExitValue();
assertTrue(exitValue == 0);
! // java -mp mods/$TESTMODULE -m $TESTMODULE/$MAINCLASS
! exitValue
! = executeTestJava("-mp", subdir, "-m", mid)
! .outputTo(System.out)
! .errorTo(System.out)
! .getExitValue();
assertTrue(exitValue == 0);
}
/**
--- 70,120 ----
MODS_DIR.resolve(TEST_MODULE));
assertTrue(compiled, "test module did not compile");
}
+ /**
+ * Execute "java" with the given arguments, returning the exit code.
+ */
+ private int exec(String... args) throws Exception {
+ return ProcessTools.executeTestJava(args)
+ .outputTo(System.out)
+ .errorTo(System.out)
+ .getExitValue();
+ }
+
/**
* The initial module is loaded from an exploded module
*/
public void testRunWithExplodedModule() throws Exception {
String dir = MODS_DIR.toString();
String subdir = MODS_DIR.resolve(TEST_MODULE).toString();
String mid = TEST_MODULE + "/" + MAIN_CLASS;
! // java --module-path mods -module $TESTMODULE/$MAINCLASS
! int exitValue = exec("--module-path", dir, "--module", mid);
assertTrue(exitValue == 0);
! // java --module-path mods/$TESTMODULE --module $TESTMODULE/$MAINCLASS
! exitValue = exec("--module-path", subdir, "--module", mid);
! assertTrue(exitValue == 0);
!
! // java --module-path=mods --module=$TESTMODULE/$MAINCLASS
! exitValue = exec("--module-path=" + dir, "--module=" + mid);
! assertTrue(exitValue == 0);
!
! // java --module-path=mods/$TESTMODULE --module=$TESTMODULE/$MAINCLASS
! exitValue = exec("--module-path=" + subdir, "--module=" + mid);
! assertTrue(exitValue == 0);
!
! // java -p mods -m $TESTMODULE/$MAINCLASS
! exitValue = exec("-p", dir, "-m", mid);
! assertTrue(exitValue == 0);
!
! // java -p mods/$TESTMODULE -m $TESTMODULE/$MAINCLASS
! exitValue = exec("-p", subdir, "-m", mid);
assertTrue(exitValue == 0);
}
/**
*** 117,142 ****
boolean success
= new sun.tools.jar.Main(System.out, System.out, "jar")
.run(args);
assertTrue(success);
! // java -mp mlib -m $TESTMODULE
! int exitValue
! = executeTestJava("-mp", dir.toString(),
! "-m", TEST_MODULE)
! .outputTo(System.out)
! .errorTo(System.out)
! .getExitValue();
assertTrue(exitValue == 0);
! // java -mp mlib/m.jar -m $TESTMODULE
! exitValue
! = executeTestJava("-mp", jar.toString(),
! "-m", TEST_MODULE)
! .outputTo(System.out)
! .errorTo(System.out)
! .getExitValue();
assertTrue(exitValue == 0);
}
/**
--- 135,152 ----
boolean success
= new sun.tools.jar.Main(System.out, System.out, "jar")
.run(args);
assertTrue(success);
! // java --module-path mlib -module $TESTMODULE
! int exitValue = exec("--module-path", dir.toString(),
! "--module", TEST_MODULE);
assertTrue(exitValue == 0);
! // java --module-path mlib/m.jar -module $TESTMODULE
! exitValue = exec("--module-path", jar.toString(),
! "--module", TEST_MODULE);
assertTrue(exitValue == 0);
}
/**
*** 155,172 ****
jmod
};
jdk.tools.jmod.JmodTask task = new jdk.tools.jmod.JmodTask();
assertEquals(task.run(args), 0);
! // java -mp mods -m $TESTMODULE
! int exitValue
! = executeTestJava("-mp", dir.toString(),
! "-m", TEST_MODULE)
! .outputTo(System.out)
! .errorTo(System.out)
! .getExitValue();
!
assertTrue(exitValue != 0);
}
/**
--- 165,177 ----
jmod
};
jdk.tools.jmod.JmodTask task = new jdk.tools.jmod.JmodTask();
assertEquals(task.run(args), 0);
! // java --module-path mods --module $TESTMODULE
! int exitValue = exec("--module-path", dir.toString(),
! "--module", TEST_MODULE);
assertTrue(exitValue != 0);
}
/**
*** 175,211 ****
*/
public void testRunWithNonExistentEntry() throws Exception {
String mp = "DoesNotExist" + File.pathSeparator + MODS_DIR.toString();
String mid = TEST_MODULE + "/" + MAIN_CLASS;
! // java -mp mods -m $TESTMODULE/$MAINCLASS
! int exitValue
! = executeTestJava("-mp", mp,
! "-m", mid)
! .outputTo(System.out)
! .errorTo(System.out)
! .getExitValue();
!
assertTrue(exitValue == 0);
}
/**
* Attempt to run an unknown initial module
*/
public void testTryRunWithBadModule() throws Exception {
String modulepath = MODS_DIR.toString();
! // java -mp mods -m $TESTMODULE
! int exitValue
! = executeTestJava("-mp", modulepath,
! "-m", "rhubarb")
! .outputTo(System.out)
! .errorTo(System.out)
! .shouldContain("not found")
! .getExitValue();
!
assertTrue(exitValue != 0);
}
/**
--- 180,203 ----
*/
public void testRunWithNonExistentEntry() throws Exception {
String mp = "DoesNotExist" + File.pathSeparator + MODS_DIR.toString();
String mid = TEST_MODULE + "/" + MAIN_CLASS;
! // java --module-path mods --module $TESTMODULE/$MAINCLASS
! int exitValue = exec("--module-path", mp, "--module", mid);
assertTrue(exitValue == 0);
}
/**
* Attempt to run an unknown initial module
*/
public void testTryRunWithBadModule() throws Exception {
String modulepath = MODS_DIR.toString();
! // java --module-path mods -m $TESTMODULE
! int exitValue = exec("--module-path", modulepath, "-m", "rhubarb");
assertTrue(exitValue != 0);
}
/**
*** 214,231 ****
*/
public void testTryRunWithBadMainClass() throws Exception {
String modulepath = MODS_DIR.toString();
String mid = TEST_MODULE + "/p.rhubarb";
! // java -mp mods -m $TESTMODULE/$MAINCLASS
! int exitValue
! = executeTestJava("-mp", modulepath,
! "-m", mid)
! .outputTo(System.out)
! .errorTo(System.out)
! .getExitValue();
!
assertTrue(exitValue != 0);
}
/**
--- 206,217 ----
*/
public void testTryRunWithBadMainClass() throws Exception {
String modulepath = MODS_DIR.toString();
String mid = TEST_MODULE + "/p.rhubarb";
! // java --module-path mods -m $TESTMODULE/$MAINCLASS
! int exitValue = exec("--module-path", modulepath, "-m", mid);
assertTrue(exitValue != 0);
}
/**
*** 246,264 ****
boolean success
= new sun.tools.jar.Main(System.out, System.out, "jar")
.run(args);
assertTrue(success);
! // java -mp mods -m $TESTMODULE
! int exitValue
! = executeTestJava("-mp", dir.toString(),
! "-m", TEST_MODULE)
! .outputTo(System.out)
! .errorTo(System.out)
! .shouldContain("does not have a MainClass attribute")
! .getExitValue();
!
assertTrue(exitValue != 0);
}
/**
--- 232,243 ----
boolean success
= new sun.tools.jar.Main(System.out, System.out, "jar")
.run(args);
assertTrue(success);
! // java --module-path mods -m $TESTMODULE
! int exitValue = exec("--module-path", dir.toString(), "-m", TEST_MODULE);
assertTrue(exitValue != 0);
}
/**
*** 267,283 ****
*/
public void testTryRunWithMainClassInWrongModule() throws Exception {
String modulepath = MODS_DIR.toString();
String mid = "java.base/" + MAIN_CLASS;
! // java -mp mods -m $TESTMODULE/$MAINCLASS
! int exitValue
! = executeTestJava("-mp", modulepath,
! "-m", mid)
! .outputTo(System.out)
! .errorTo(System.out)
! .getExitValue();
!
assertTrue(exitValue != 0);
}
}
--- 246,256 ----
*/
public void testTryRunWithMainClassInWrongModule() throws Exception {
String modulepath = MODS_DIR.toString();
String mid = "java.base/" + MAIN_CLASS;
! // java --module-path mods --module $TESTMODULE/$MAINCLASS
! int exitValue = exec("--module-path", modulepath, "--module", mid);
assertTrue(exitValue != 0);
}
}
< prev index next >