github.com/ouraigua/jenkins-library@v0.0.0-20231028010029-fbeaf2f3aa9b/integration/integration_maven_test.go (about) 1 //go:build integration 2 // +build integration 3 4 // can be executed with 5 // go test -v -tags integration -run TestMavenIntegration ./integration/... 6 7 package main 8 9 import ( 10 "testing" 11 ) 12 13 func TestMavenIntegrationBuildCloudSdkSpringProject(t *testing.T) { 14 t.Parallel() 15 container := givenThisContainer(t, IntegrationTestDockerExecRunnerBundle{ 16 Image: "maven:3-openjdk-8-slim", 17 User: "1000", 18 TestDir: []string{"testdata", "TestMavenIntegration", "cloud-sdk-spring-archetype"}, 19 Mounts: map[string]string{}, 20 Setup: []string{}, 21 }) 22 defer container.terminate(t) 23 24 err := container.whenRunningPiperCommand("mavenBuild", "") 25 if err != nil { 26 t.Fatalf("Calling piper command failed %s", err) 27 } 28 29 container.assertHasOutput(t, "BUILD SUCCESS") 30 container.assertHasFiles(t, 31 "/project/application/target/cloud-sdk-spring-archetype-application.jar", 32 "/tmp/.m2/repository", 33 ) 34 35 err = container.whenRunningPiperCommand("mavenExecuteIntegration", "") 36 if err != nil { 37 t.Fatalf("Calling piper command failed %s", err) 38 } 39 40 container.assertHasOutput(t, 41 "INFO mydemo.HelloWorldControllerTest - Starting HelloWorldControllerTest", 42 "Tests run: 1, Failures: 0, Errors: 0, Skipped: 0", 43 ) 44 45 container.assertHasFiles(t, "/project/integration-tests/target/coverage-reports/jacoco.exec") 46 } 47 48 func TestMavenIntegrationBuildCloudSdkTomeeProject(t *testing.T) { 49 t.Parallel() 50 container := givenThisContainer(t, IntegrationTestDockerExecRunnerBundle{ 51 Image: "maven:3-openjdk-8-slim", 52 User: "1000", 53 TestDir: []string{"testdata", "TestMavenIntegration", "cloud-sdk-tomee-archetype"}, 54 Mounts: map[string]string{}, 55 Setup: []string{}, 56 }) 57 defer container.terminate(t) 58 59 err := container.whenRunningPiperCommand("mavenBuild", "") 60 if err != nil { 61 t.Fatalf("Calling piper command failed %s", err) 62 } 63 64 container.assertHasOutput(t, "BUILD SUCCESS") 65 container.assertHasFiles(t, 66 "/project/application/target/cloud-sdk-tomee-archetype-application-classes.jar", 67 "/project/application/target/cloud-sdk-tomee-archetype-application.war", 68 "/tmp/.m2/repository", 69 ) 70 71 err = container.whenRunningPiperCommand("mavenExecuteIntegration", "") 72 if err != nil { 73 t.Fatalf("Calling piper command failed %s", err) 74 } 75 76 container.assertHasOutput(t, 77 "(prepare-agent) @ cloud-sdk-tomee-archetype-integration-tests", 78 "Tests run: 1, Failures: 0, Errors: 0, Skipped: 0", 79 ) 80 81 container.assertHasFiles(t, "/project/integration-tests/target/coverage-reports/jacoco.exec") 82 }