Search in sources :

Example 61 with Build

use of org.jenkinsci.test.acceptance.po.Build in project acceptance-test-harness by jenkinsci.

the class JacocoPluginTest method checkSuccessfulExecutionAndsummary.

@Test
public void checkSuccessfulExecutionAndsummary() {
    MavenInstallation.installSomeMaven(jenkins);
    FreeStyleJob job = jenkins.jobs.create();
    {
        job.copyDir(resource("/jacoco/test"));
        MavenBuildStep maven = job.addBuildStep(MavenBuildStep.class);
        maven.targets.set("clean package -B");
        maven.properties("jacoco.version=" + getJacocoLibraryVersion(), true);
        JacocoPublisher publisher = job.addPublisher(JacocoPublisher.class);
        publisher.changeBuildStatus.check();
    }
    job.save();
    Build build = job.startBuild().waitUntilFinished().shouldSucceed();
    assertThat(build, hasAction("Coverage Report"));
    JacocoResultPage total = new JacocoResultPage(build);
    assertEquals(45.45, total.instructionCoverage(), 0.01);
    assertEquals(50.0, total.branchCoverage(), 0.01);
    assertEquals(33.33, total.complexityScore(), 0.01);
    assertEquals(50.0, total.lineCoverage(), 0.01);
    assertEquals(50.0, total.methodCoverage(), 0.01);
    assertEquals(100.0, total.classCoverage(), 0.01);
    JacocoResultPage pkg = new JacocoResultPage(total, "(default)/App");
    assertEquals(45.45, pkg.instructionCoverage(), 0.01);
    assertEquals(50.0, pkg.branchCoverage(), 0.01);
    assertEquals(33.33, pkg.complexityScore(), 0.01);
    assertEquals(50.0, pkg.lineCoverage(), 0.01);
    assertEquals(50.0, pkg.methodCoverage(), 0.01);
    assertEquals(100.0, pkg.classCoverage(), 0.01);
}
Also used : JacocoResultPage(org.jenkinsci.test.acceptance.plugins.jacoco.JacocoResultPage) JacocoPublisher(org.jenkinsci.test.acceptance.plugins.jacoco.JacocoPublisher) Build(org.jenkinsci.test.acceptance.po.Build) MavenBuildStep(org.jenkinsci.test.acceptance.plugins.maven.MavenBuildStep) FreeStyleJob(org.jenkinsci.test.acceptance.po.FreeStyleJob) AbstractJUnitTest(org.jenkinsci.test.acceptance.junit.AbstractJUnitTest) Test(org.junit.Test)

Example 62 with Build

use of org.jenkinsci.test.acceptance.po.Build in project acceptance-test-harness by jenkinsci.

the class ArtifactoryPluginTest method maven_integration.

@Test
@WithPlugins("maven-plugin")
@Ignore
@Issue("JENKINS-66791")
public void maven_integration() {
    installSomeMaven(jenkins);
    final ArtifactoryContainer artifactory = artifactoryContainer.get();
    waitForArtifactory(artifactory);
    configureArtifactory(artifactory);
    MavenModuleSet job = jenkins.jobs.create(MavenModuleSet.class);
    job.configure();
    job.copyDir(resource("/artifactory_plugin/multimodule/"));
    job.goals.set("install");
    job.options("-verbose");
    ArtifactoryPublisher publisher = job.addPublisher(ArtifactoryPublisher.class);
    publisher.refresh();
    job.save();
    Build build = job.startBuild().shouldSucceed();
    String log = build.getConsole();
    assertThat(log, containsString("Initializing Artifactory Build-Info Recording"));
    assertThat(log, containsString("Deploying artifact"));
    assertThat(log, containsRegexp("Deploying build (info|descriptor) to: " + artifactory.getURL() + "/api/build"));
}
Also used : ArtifactoryContainer(org.jenkinsci.test.acceptance.docker.fixtures.ArtifactoryContainer) Build(org.jenkinsci.test.acceptance.po.Build) ArtifactoryPublisher(org.jenkinsci.test.acceptance.plugins.artifactory.ArtifactoryPublisher) Matchers.containsString(org.hamcrest.Matchers.containsString) MavenModuleSet(org.jenkinsci.test.acceptance.plugins.maven.MavenModuleSet) Ignore(org.junit.Ignore) Issue(org.jvnet.hudson.test.Issue) AbstractJUnitTest(org.jenkinsci.test.acceptance.junit.AbstractJUnitTest) Test(org.junit.Test) DockerTest(org.jenkinsci.test.acceptance.junit.DockerTest) WithPlugins(org.jenkinsci.test.acceptance.junit.WithPlugins)

Example 63 with Build

use of org.jenkinsci.test.acceptance.po.Build in project acceptance-test-harness by jenkinsci.

the class ArtifactoryPluginTest method gradle_integration.

@Test
@WithPlugins("gradle")
@Ignore
@Issue("JENKINS-39323")
public void gradle_integration() {
    final ArtifactoryContainer artifactory = artifactoryContainer.get();
    waitForArtifactory(artifactory);
    configureArtifactory(artifactory);
    GradleInstallation.installGradle(jenkins, "gradle 2.0", "2.0");
    FreeStyleJob job = jenkins.jobs.create();
    job.copyDir(resource("/artifactory_plugin/quickstart"));
    ArtifactoryGradleConfiguratior gradleConfig = new ArtifactoryGradleConfiguratior(job);
    gradleConfig.refresh();
    GradleStep gradle = job.addBuildStep(GradleStep.class);
    gradle.setVersion("gradle 2.0");
    // gradle.tasks.set("build --stacktrace --debug");
    gradle.setTasks("build");
    job.save();
    Build build = job.startBuild().shouldSucceed();
    String log = build.getConsole();
    assertThat(log, containsString("build artifactoryPublish"));
    assertThat(log, containsString("[buildinfo]"));
    assertThat(log, containsString("Deploying artifact"));
    assertThat(log, containsRegexp("Deploying build (info|descriptor) to: " + artifactory.getURL() + "/api/build"));
}
Also used : ArtifactoryContainer(org.jenkinsci.test.acceptance.docker.fixtures.ArtifactoryContainer) Build(org.jenkinsci.test.acceptance.po.Build) GradleStep(org.jenkinsci.test.acceptance.plugins.gradle.GradleStep) ArtifactoryGradleConfiguratior(org.jenkinsci.test.acceptance.plugins.artifactory.ArtifactoryGradleConfiguratior) FreeStyleJob(org.jenkinsci.test.acceptance.po.FreeStyleJob) Matchers.containsString(org.hamcrest.Matchers.containsString) Ignore(org.junit.Ignore) Issue(org.jvnet.hudson.test.Issue) AbstractJUnitTest(org.jenkinsci.test.acceptance.junit.AbstractJUnitTest) Test(org.junit.Test) DockerTest(org.jenkinsci.test.acceptance.junit.DockerTest) WithPlugins(org.jenkinsci.test.acceptance.junit.WithPlugins)

Example 64 with Build

use of org.jenkinsci.test.acceptance.po.Build in project acceptance-test-harness by jenkinsci.

the class ConfigFileProviderTest method createPipelineAndGetConsole.

private String createPipelineAndGetConsole(final MavenSettingsConfig mvnConfig) {
    final WorkflowJob job = jenkins.jobs.create(WorkflowJob.class);
    job.script.set(String.format("node {\n" + "    configFileProvider(\n" + "        [configFile(fileId: '%s', variable: 'MAVEN_SETTINGS')]) {\n" + "            \n" + "        sh 'cat $MAVEN_SETTINGS '\n" + "    }\n" + "}", mvnConfig.id()));
    job.save();
    final Build b = job.startBuild().shouldSucceed();
    return b.getConsole();
}
Also used : Build(org.jenkinsci.test.acceptance.po.Build) WorkflowJob(org.jenkinsci.test.acceptance.po.WorkflowJob)

Example 65 with Build

use of org.jenkinsci.test.acceptance.po.Build in project acceptance-test-harness by jenkinsci.

the class GerritTriggerTest method build_is_triggered_after_comment_is_added.

@Test
public void build_is_triggered_after_comment_is_added() {
    GerritTriggerNewServer newServer = new GerritTriggerNewServer(jenkins);
    newServer.saveNewTestServerConfigIfNone(gtHostname);
    GerritTriggerServer server = new GerritTriggerServer(jenkins, gtHostname);
    server.saveTestServerConfig(gtHostname, gtGerritFrontUrl, gtGerrituser, gtPrivateKey);
    Job j = jenkins.jobs.create(FreeStyleJob.class);
    String jobName = j.name;
    GerritTriggerJob job = new GerritTriggerJob(jenkins, jobName);
    job.saveTestJobConfig(GerritTriggerJob.EventToTriggerOn.CommentAdded, gtHostname, gtProject);
    try {
        GitLogResult gitLogResult = pushChangeForReview(jobName);
        addComment(gitLogResult.commitId);
        changes.add(gitLogResult.changeId);
        Build b = new Build(j, j.getNextBuildNumber());
        assertTrue(b.waitUntilFinished().isSuccess());
        elasticSleep(10000);
        ProcessBuilder gerritQuery = new ProcessBuilder("ssh", "-p", "29418", "-i", gtPrivateKey, gtGerrituser + "@" + gtHostname, "gerrit", "query", "change_id=" + gitLogResult.changeId, "--all-approvals", "--format JSON");
        String json = removeLastLine(stringFrom(logProcessBuilderIssues(gerritQuery, "gerrit query")));
        checkApprovalValueFromJSON(json, "Verified", 1);
        checkApprovalValueFromJSON(json, "Code-Review", 1);
    } catch (InterruptedException | IOException e) {
        fail(e.getMessage());
    }
}
Also used : GerritTriggerNewServer(org.jenkinsci.test.acceptance.plugins.gerrit_trigger.GerritTriggerNewServer) GerritTriggerServer(org.jenkinsci.test.acceptance.plugins.gerrit_trigger.GerritTriggerServer) Build(org.jenkinsci.test.acceptance.po.Build) GerritTriggerJob(org.jenkinsci.test.acceptance.plugins.gerrit_trigger.GerritTriggerJob) IOException(java.io.IOException) Job(org.jenkinsci.test.acceptance.po.Job) FreeStyleJob(org.jenkinsci.test.acceptance.po.FreeStyleJob) GerritTriggerJob(org.jenkinsci.test.acceptance.plugins.gerrit_trigger.GerritTriggerJob) AbstractJUnitTest(org.jenkinsci.test.acceptance.junit.AbstractJUnitTest) Test(org.junit.Test)

Aggregations

Build (org.jenkinsci.test.acceptance.po.Build)175 Test (org.junit.Test)157 FreeStyleJob (org.jenkinsci.test.acceptance.po.FreeStyleJob)113 AbstractJUnitTest (org.jenkinsci.test.acceptance.junit.AbstractJUnitTest)101 WithPlugins (org.jenkinsci.test.acceptance.junit.WithPlugins)40 DockerTest (org.jenkinsci.test.acceptance.junit.DockerTest)22 WorkflowJob (org.jenkinsci.test.acceptance.po.WorkflowJob)20 Issue (org.jvnet.hudson.test.Issue)18 CoreMatchers.containsString (org.hamcrest.CoreMatchers.containsString)14 GitRepo (org.jenkinsci.test.acceptance.plugins.git.GitRepo)13 JobDslBuildStep (org.jenkinsci.test.acceptance.plugins.job_dsl.JobDslBuildStep)13 Pattern (java.util.regex.Pattern)11 Job (org.jenkinsci.test.acceptance.po.Job)11 SmokeTest (org.jenkinsci.test.acceptance.junit.SmokeTest)9 WithCredentials (org.jenkinsci.test.acceptance.junit.WithCredentials)9 GitScm (org.jenkinsci.test.acceptance.plugins.git.GitScm)9 Matchers.containsString (org.hamcrest.Matchers.containsString)8 WarningsAction (org.jenkinsci.test.acceptance.plugins.warnings.WarningsAction)8 MavenModuleSet (org.jenkinsci.test.acceptance.plugins.maven.MavenModuleSet)7 IOException (java.io.IOException)6