github.com/ouraigua/jenkins-library@v0.0.0-20231028010029-fbeaf2f3aa9b/integration/integration_mta_test.go (about)

     1  //go:build integration
     2  // +build integration
     3  
     4  // can be executed with
     5  // go test -v -tags integration -run TestMTAIntegration ./integration/...
     6  
     7  package main
     8  
     9  import (
    10  	"testing"
    11  )
    12  
    13  func TestMTAIntegrationMavenProject(t *testing.T) {
    14  	t.Parallel()
    15  	container := givenThisContainer(t, IntegrationTestDockerExecRunnerBundle{
    16  		Image:   "devxci/mbtci-java11-node14",
    17  		User:    "root",
    18  		TestDir: []string{"testdata", "TestMtaIntegration", "maven"},
    19  	})
    20  	defer container.terminate(t)
    21  
    22  	err := container.whenRunningPiperCommand("mtaBuild", "--installArtifacts", "--m2Path=mym2")
    23  	if err != nil {
    24  		t.Fatalf("Piper command failed %s", err)
    25  	}
    26  
    27  	container.assertHasOutput(t,
    28  		"Installing /project/.flattened-pom.xml to /project/mym2/mygroup/mymvn/1.0-SNAPSHOT/mymvn-1.0-SNAPSHOT.pom",
    29  		"Installing /project/app/target/mymvn-app-1.0-SNAPSHOT.war to /project/mym2/mygroup/mymvn-app/1.0-SNAPSHOT/mymvn-app-1.0-SNAPSHOT.war",
    30  		"Installing /project/app/target/mymvn-app-1.0-SNAPSHOT-classes.jar to /project/mym2/mygroup/mymvn-app/1.0-SNAPSHOT/mymvn-app-1.0-SNAPSHOT-classes.jar",
    31  		"added 2 packages from 3 contributors and audited 2 packages in",
    32  	)
    33  }
    34  
    35  func TestMTAIntegrationMavenSpringProject(t *testing.T) {
    36  	t.Parallel()
    37  	container := givenThisContainer(t, IntegrationTestDockerExecRunnerBundle{
    38  		Image:   "devxci/mbtci-java11-node14",
    39  		User:    "root",
    40  		TestDir: []string{"testdata", "TestMtaIntegration", "maven-spring"},
    41  	})
    42  	defer container.terminate(t)
    43  
    44  	err := container.whenRunningPiperCommand("mtaBuild", "--installArtifacts", "--m2Path=mym2")
    45  	if err != nil {
    46  		t.Fatalf("Piper command failed %s", err)
    47  	}
    48  	err = container.whenRunningPiperCommand("mavenExecuteIntegration", "--m2Path=mym2")
    49  	if err != nil {
    50  		t.Fatalf("Piper command failed %s", err)
    51  	}
    52  
    53  	container.assertHasOutput(t, "Tests run: 1, Failures: 0, Errors: 0, Skipped: 0")
    54  }
    55  
    56  func TestMTAIntegrationNPMProject(t *testing.T) {
    57  	t.Parallel()
    58  	container := givenThisContainer(t, IntegrationTestDockerExecRunnerBundle{
    59  		Image:   "devxci/mbtci-java11-node14",
    60  		User:    "root",
    61  		TestDir: []string{"testdata", "TestMtaIntegration", "npm"},
    62  	})
    63  	defer container.terminate(t)
    64  
    65  	err := container.whenRunningPiperCommand("mtaBuild", "")
    66  	if err != nil {
    67  		t.Fatalf("Piper command failed %s", err)
    68  	}
    69  
    70  	container.assertHasOutput(t, "INFO the MTA archive generated at: /project/test-mta-js.mtar")
    71  }
    72  
    73  func TestMTAIntegrationNPMProjectInstallsDevDependencies(t *testing.T) {
    74  	t.Parallel()
    75  	container := givenThisContainer(t, IntegrationTestDockerExecRunnerBundle{
    76  		Image:   "devxci/mbtci-java11-node14",
    77  		User:    "root",
    78  		TestDir: []string{"testdata", "TestMtaIntegration", "npm-install-dev-dependencies"},
    79  	})
    80  	defer container.terminate(t)
    81  
    82  	err := container.whenRunningPiperCommand("mtaBuild", "--installArtifacts")
    83  	if err != nil {
    84  		t.Fatalf("Piper command failed %s", err)
    85  	}
    86  
    87  	container.assertHasOutput(t, "added 2 packages in")
    88  }