1 /*
   2  * Copyright (c) 2017, Oracle and/or its affiliates. All rights reserved.
   3  * ORACLE PROPRIETARY/CONFIDENTIAL. Use is subject to license terms.
   4  */
   5 
   6 /*
   7  * @test
   8  * @summary Basic (sanity) test for JDK-under-test inside a docker image.
   9  * @requires (sun.arch.data.model != "32") & (os.family == "linux")
  10  * @library /test/lib
  11  * @modules java.base/jdk.internal.misc
  12  * @modules java.management
  13  *          jdk.jartool/sun.tools.jar
  14  * @run main DockerBasicTest
  15  */
  16 import jdk.test.lib.containers.docker.DockerTestUtils;
  17 
  18 
  19 public class DockerBasicTest {
  20     public static void main(String[] args) throws Exception {
  21         if (!DockerTestUtils.canTestDocker())
  22             return;
  23 
  24         String dockerImageName = "jdk10-internal:test";
  25         DockerTestUtils.buildJdkDockerImage(dockerImageName,
  26                                             "Dockerfile-BasicTest", "jdk-docker");
  27 
  28         testJavaVersion(dockerImageName);
  29     }
  30 
  31 
  32     private static void testJavaVersion(String imageName) throws Exception {
  33         DockerTestUtils.execute("docker", "run", "--tty=true", imageName,
  34                                 "/jdk/bin/java", "-version")
  35             .shouldHaveExitValue(0)
  36             .shouldContain("Java HotSpot");
  37     }
  38 }