< prev index next >

test/jdk/tools/jimage/JImageExtractTest.java

Print this page

        

*** 24,37 **** /* * @test * @summary Tests to verify jimage 'extract' action * @library /test/lib * @modules jdk.jlink/jdk.tools.jimage ! * @build jdk.test.lib.Asserts * @run main/othervm JImageExtractTest */ import java.io.IOException; import java.nio.file.Files; import java.nio.file.Path; import java.nio.file.Paths; import java.nio.file.attribute.FileAttribute; --- 24,38 ---- /* * @test * @summary Tests to verify jimage 'extract' action * @library /test/lib * @modules jdk.jlink/jdk.tools.jimage ! * @build jdk.test.lib.Asserts JImageCliTest * @run main/othervm JImageExtractTest */ + import java.io.File; import java.io.IOException; import java.nio.file.Files; import java.nio.file.Path; import java.nio.file.Paths; import java.nio.file.attribute.FileAttribute;
*** 44,62 **** --- 45,85 ---- import static jdk.test.lib.Asserts.assertEquals; import static jdk.test.lib.Asserts.assertTrue; public class JImageExtractTest extends JImageCliTest { + public void beforeTest() throws IOException { + Path cwd = new File(".").toPath(); + System.out.printf("cleaning working dir [%s]... \n", cwd.toAbsolutePath()); + for (File f : new File(".").listFiles()) { + if (f.isDirectory()) { + jdk.test.lib.util.FileUtils.deleteFileTreeWithRetry(f.toPath()); + } else { + f.delete(); + } + } + } + public void testExtract() throws IOException { jimage("extract", getImagePath()) .assertSuccess() .resultChecker(r -> { assertTrue(r.output.isEmpty(), "Output is not expected"); }); verifyExplodedImage(Paths.get(".")); } + // do a second round to check that workspace initialization works ok + public void testExtractSecondRound() throws IOException { + jimage("extract", getImagePath()) + .assertSuccess() + .resultChecker(r -> { + assertTrue(r.output.isEmpty(), "Output is not expected"); + }); + verifyExplodedImage(Paths.get(".")); + } + public void testExtractHelp() { for (String opt : Arrays.asList("-h", "--help")) { jimage("extract", "--help") .assertSuccess() .resultChecker(r -> {
*** 80,92 **** jimage("extract", "") .assertFailure() .assertShowsError(); } public void testExtractNotAnImage() throws IOException { Path tmp = Files.createTempFile(Paths.get("."), getClass().getName(), "not_an_image"); ! jimage("extract", tmp.toString()) .assertFailure() .assertShowsError(); } public void testExtractNotExistingImage() throws IOException { --- 103,123 ---- jimage("extract", "") .assertFailure() .assertShowsError(); } + public void testExtractEmptyFile() throws IOException { + Path tmp = Files.createTempFile(Paths.get("."), getClass().getName(), "empty_file"); + jimage("extract", "--dir", "some_directory", tmp.toString()) + .assertFailure() + .assertShowsError(); + } + public void testExtractNotAnImage() throws IOException { Path tmp = Files.createTempFile(Paths.get("."), getClass().getName(), "not_an_image"); ! Files.write(tmp, "This is not an image".getBytes()); ! jimage("extract", "--dir", "some_directory", tmp.toString()) .assertFailure() .assertShowsError(); } public void testExtractNotExistingImage() throws IOException {
< prev index next >