Search in sources :

Example 96 with BuildResult

use of org.gradle.testkit.runner.BuildResult in project spring-boot by spring-projects.

the class BootBuildImageIntegrationTests method buildsImageWithDefaultBuilder.

@TestTemplate
void buildsImageWithDefaultBuilder() throws IOException {
    writeMainClass();
    writeLongNameResource();
    BuildResult result = this.gradleBuild.build("bootBuildImage", "--pullPolicy=IF_NOT_PRESENT");
    String projectName = this.gradleBuild.getProjectDir().getName();
    assertThat(result.task(":bootBuildImage").getOutcome()).isEqualTo(TaskOutcome.SUCCESS);
    assertThat(result.getOutput()).contains("docker.io/library/" + projectName);
    assertThat(result.getOutput()).contains("---> Test Info buildpack building");
    assertThat(result.getOutput()).contains("env: BP_JVM_VERSION=8.*");
    assertThat(result.getOutput()).contains("Network status: HTTP/2 200");
    assertThat(result.getOutput()).contains("---> Test Info buildpack done");
    removeImages(projectName);
}
Also used : BuildResult(org.gradle.testkit.runner.BuildResult) TestTemplate(org.junit.jupiter.api.TestTemplate)

Example 97 with BuildResult

use of org.gradle.testkit.runner.BuildResult in project spring-boot by spring-projects.

the class BootBuildImageIntegrationTests method buildsImageWithBuildpackFromDirectory.

@TestTemplate
@DisabledOnOs(OS.WINDOWS)
void buildsImageWithBuildpackFromDirectory() throws IOException {
    writeMainClass();
    writeLongNameResource();
    writeBuildpackContent();
    BuildResult result = this.gradleBuild.build("bootBuildImage", "--pullPolicy=IF_NOT_PRESENT");
    String projectName = this.gradleBuild.getProjectDir().getName();
    assertThat(result.task(":bootBuildImage").getOutcome()).isEqualTo(TaskOutcome.SUCCESS);
    assertThat(result.getOutput()).contains("docker.io/library/" + projectName);
    assertThat(result.getOutput()).contains("---> Hello World buildpack");
    removeImages(projectName);
}
Also used : BuildResult(org.gradle.testkit.runner.BuildResult) DisabledOnOs(org.junit.jupiter.api.condition.DisabledOnOs) TestTemplate(org.junit.jupiter.api.TestTemplate)

Example 98 with BuildResult

use of org.gradle.testkit.runner.BuildResult in project spring-boot by spring-projects.

the class BootBuildImageIntegrationTests method buildsImageWithWarPackagingAndJarConfiguration.

@TestTemplate
void buildsImageWithWarPackagingAndJarConfiguration() throws IOException {
    writeMainClass();
    writeLongNameResource();
    BuildResult result = this.gradleBuild.build("bootBuildImage", "--pullPolicy=IF_NOT_PRESENT");
    String projectName = this.gradleBuild.getProjectDir().getName();
    assertThat(result.task(":bootBuildImage").getOutcome()).isEqualTo(TaskOutcome.SUCCESS);
    assertThat(result.getOutput()).contains("docker.io/library/" + projectName);
    assertThat(result.getOutput()).contains("---> Test Info buildpack building");
    assertThat(result.getOutput()).contains("---> Test Info buildpack done");
    File buildLibs = new File(this.gradleBuild.getProjectDir(), "build/libs");
    assertThat(buildLibs.listFiles()).containsExactly(new File(buildLibs, this.gradleBuild.getProjectDir().getName() + ".war"));
    removeImages(projectName);
}
Also used : BuildResult(org.gradle.testkit.runner.BuildResult) File(java.io.File) TestTemplate(org.junit.jupiter.api.TestTemplate)

Example 99 with BuildResult

use of org.gradle.testkit.runner.BuildResult in project spring-boot by spring-projects.

the class BootBuildImageIntegrationTests method buildsImageWithPullPolicy.

@TestTemplate
void buildsImageWithPullPolicy() throws IOException {
    writeMainClass();
    writeLongNameResource();
    String projectName = this.gradleBuild.getProjectDir().getName();
    BuildResult result = this.gradleBuild.build("bootBuildImage", "--pullPolicy=ALWAYS");
    assertThat(result.task(":bootBuildImage").getOutcome()).isEqualTo(TaskOutcome.SUCCESS);
    assertThat(result.getOutput()).contains("Pulled builder image").contains("Pulled run image");
    result = this.gradleBuild.build("bootBuildImage", "--pullPolicy=IF_NOT_PRESENT");
    assertThat(result.task(":bootBuildImage").getOutcome()).isEqualTo(TaskOutcome.SUCCESS);
    assertThat(result.getOutput()).doesNotContain("Pulled builder image").doesNotContain("Pulled run image");
    removeImages(projectName);
}
Also used : BuildResult(org.gradle.testkit.runner.BuildResult) TestTemplate(org.junit.jupiter.api.TestTemplate)

Example 100 with BuildResult

use of org.gradle.testkit.runner.BuildResult in project spring-boot by spring-projects.

the class BootBuildImageIntegrationTests method failsWhenCachesAreConfiguredTwice.

@TestTemplate
void failsWhenCachesAreConfiguredTwice() throws IOException {
    writeMainClass();
    writeLongNameResource();
    BuildResult result = this.gradleBuild.buildAndFail("bootBuildImage");
    assertThat(result.getOutput()).containsPattern("Each image building cache can be configured only once");
}
Also used : BuildResult(org.gradle.testkit.runner.BuildResult) TestTemplate(org.junit.jupiter.api.TestTemplate)

Aggregations

BuildResult (org.gradle.testkit.runner.BuildResult)143 File (java.io.File)62 TestTemplate (org.junit.jupiter.api.TestTemplate)60 Test (org.junit.Test)47 Test (org.junit.jupiter.api.Test)20 StringWriter (java.io.StringWriter)19 GradleRunner (org.gradle.testkit.runner.GradleRunner)17 Test (org.testng.annotations.Test)10 ImageReference (org.springframework.boot.buildpack.platform.docker.type.ImageReference)8 JarFile (java.util.jar.JarFile)7 ArrayList (java.util.ArrayList)6 List (java.util.List)6 TestHelpers.findFile (me.tatarka.TestHelpers.findFile)6 TestHelpers.writeFile (me.tatarka.TestHelpers.writeFile)6 ContainerConfig (com.github.dockerjava.api.model.ContainerConfig)5 FileWriter (java.io.FileWriter)5 IOException (java.io.IOException)5 PrintWriter (java.io.PrintWriter)5 Path (java.nio.file.Path)5 BufferedReader (java.io.BufferedReader)4