Search in sources :

Example 46 with FreeStyleJob

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

the class WarningsPluginTest method createFreeStyleJob.

@Override
protected FreeStyleJob createFreeStyleJob(final Container owner) {
    FreeStyleJob job = createFreeStyleJob(settings -> settings.addConsoleParser(JAVA_ID), owner);
    catWarningsToConsole(job);
    return job;
}
Also used : FreeStyleJob(org.jenkinsci.test.acceptance.po.FreeStyleJob)

Example 47 with FreeStyleJob

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

the class WarningsPluginTest method should_handle_invalid_ulr_gracefully.

/**
 * Verifies that providing a wrong URL to the detail factories should navigate to the top-level page.
 */
@Test
@Issue("JENKINS-37195")
public void should_handle_invalid_ulr_gracefully() {
    FreeStyleJob job = createFreeStyleJob(settings -> settings.addConsoleParser(JAVA_ID));
    catWarningsToConsole(job);
    buildSuccessfulJob(job);
    WarningsAction action = createJavaProjectAction(job);
    action.open();
    visitLastPackage();
    String packageRegex = "package.-?\\d+";
    driver.get(driver.getCurrentUrl().replaceAll(packageRegex, "package.01234"));
    assertThat(driver, hasContent("Aggregated Compiler Warnings"));
    visitLastPackage();
    driver.get(driver.getCurrentUrl().replaceAll(packageRegex, "package.NO_NUMBER"));
    assertThat(driver, hasContent("Aggregated Compiler Warnings"));
    visitLastPackage();
    List<WebElement> fileLinks = all(by.xpath("//table[@id='files']//td[@class='pane']//a"));
    int size = fileLinks.size();
    assertThat(size, is(5));
    fileLinks.get(size - 1).click();
    assertThat(driver, hasContent("tmp/clover55196.tmp/net/sourceforge/pmd/renderers - File YAHTMLRenderer.java"));
    driver.get(driver.getCurrentUrl().replaceAll("file.-?\\d+", "file.NO_NUMBER"));
    assertThat(driver, hasContent("Compiler Warnings - Source Folder tmp/clover55196.tmp/net/sourceforge/pmd/renderers"));
}
Also used : FreeStyleJob(org.jenkinsci.test.acceptance.po.FreeStyleJob) WarningsAction(org.jenkinsci.test.acceptance.plugins.warnings.WarningsAction) CoreMatchers.containsString(org.hamcrest.CoreMatchers.containsString) WebElement(org.openqa.selenium.WebElement) Issue(org.jvnet.hudson.test.Issue) Test(org.junit.Test)

Example 48 with FreeStyleJob

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

the class WarningsPluginTest method should_detect_warnings_of_multiple_compilers_in_console_freestyle.

/**
 * Checks that warning results are correctly created for a freestyle project with the parsers "Java", "JavaDoc" and
 * "MSBuild" if the console log contains multiple warnings of these types.
 */
@Test
public void should_detect_warnings_of_multiple_compilers_in_console_freestyle() {
    FreeStyleJob job = createFreeStyleJobWith3Parsers();
    catWarningsToConsole(job);
    verify3ParserResults(job, 1);
}
Also used : FreeStyleJob(org.jenkinsci.test.acceptance.po.FreeStyleJob) Test(org.junit.Test)

Example 49 with FreeStyleJob

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

the class MissionControlTest method testJobStatuses.

/**
 * Test Case: Check the correct highlighting of different jobs statuses.
 */
@Test
public void testJobStatuses() {
    // create new mission control view and configure it
    MissionControlView view = jenkins.views.create(MissionControlView.class, "mission-control-sample-view");
    view.configure();
    view.setHideBuildHistory(false);
    view.setHideJobs(false);
    view.save();
    view.reloadConfiguration();
    // create freestyle jobs with different statuses
    String strJobNotBuild = "simple-job-not-build";
    String strBuildSuccess = "simple-job-success";
    String strBuildFailed = "simple-job-failed";
    FreeStyleJob jobNotBuild = jenkins.jobs.create(FreeStyleJob.class, strJobNotBuild);
    FreeStyleJob jobSuccess = jenkins.jobs.create(FreeStyleJob.class, strBuildSuccess);
    jobSuccess.startBuild().waitUntilFinished();
    FreeStyleJob jobFailed = jenkins.jobs.create(FreeStyleJob.class, strBuildFailed);
    jobFailed.configure();
    // add invalid shell build step to cause the job to fail
    jobFailed.addShellStep("sh <");
    jobFailed.save();
    jobFailed.startBuild().waitUntilFinished();
    view.open();
    // check for the correct highlighting of the jobs
    assertThat(view.getJobStatusArea().getStatusOfJob(strJobNotBuild), containsString("invert-text-color"));
    assertThat(view.getJobStatusArea().getStatusOfJob(strBuildSuccess), containsString("success"));
    assertThat(view.getJobStatusArea().getStatusOfJob(strBuildFailed), containsString("danger"));
}
Also used : MissionControlView(org.jenkinsci.test.acceptance.plugins.mission_control.MissionControlView) Matchers.containsString(org.jenkinsci.test.acceptance.Matchers.containsString) FreeStyleJob(org.jenkinsci.test.acceptance.po.FreeStyleJob) AbstractJUnitTest(org.jenkinsci.test.acceptance.junit.AbstractJUnitTest) Test(org.junit.Test)

Example 50 with FreeStyleJob

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

the class MissionControlTest method testBuildQueue.

/**
 * Test the existence and number of builds in the queue.
 */
@Test
public void testBuildQueue() {
    MissionControlView view = jenkins.views.create(MissionControlView.class, "mission-control-sample-view");
    view.configure(() -> view.setHideBuildQueue(true));
    view.open();
    assertThat(driver, not(hasContent("Build queue")));
    view.configure(() -> view.setHideBuildQueue(false));
    JenkinsConfig master = jenkins.getConfigPage();
    master.configure(() -> master.labels.set("notQueued"));
    FreeStyleJob job = jenkins.jobs.create(FreeStyleJob.class, "queuedJob");
    job.configure(() -> job.setLabelExpression("queued"));
    job.scheduleBuild();
    view.open();
    assertThat(view.getBuildQueueArea().getBuildQueueSize(), is(1));
    job.configure(() -> job.setLabelExpression("notQueued"));
    job.getLastBuild().waitUntilFinished();
    view.open();
    assertThat(view.getBuildQueueArea().getBuildQueueSize(), is(0));
}
Also used : MissionControlView(org.jenkinsci.test.acceptance.plugins.mission_control.MissionControlView) JenkinsConfig(org.jenkinsci.test.acceptance.po.JenkinsConfig) FreeStyleJob(org.jenkinsci.test.acceptance.po.FreeStyleJob) AbstractJUnitTest(org.jenkinsci.test.acceptance.junit.AbstractJUnitTest) Test(org.junit.Test)

Aggregations

FreeStyleJob (org.jenkinsci.test.acceptance.po.FreeStyleJob)263 Test (org.junit.Test)242 AbstractJUnitTest (org.jenkinsci.test.acceptance.junit.AbstractJUnitTest)170 Build (org.jenkinsci.test.acceptance.po.Build)105 DockerTest (org.jenkinsci.test.acceptance.junit.DockerTest)51 WithPlugins (org.jenkinsci.test.acceptance.junit.WithPlugins)37 Issue (org.jvnet.hudson.test.Issue)32 CoreMatchers.containsString (org.hamcrest.CoreMatchers.containsString)23 JobDslBuildStep (org.jenkinsci.test.acceptance.plugins.job_dsl.JobDslBuildStep)23 SmokeTest (org.jenkinsci.test.acceptance.junit.SmokeTest)21 Resource (org.jenkinsci.test.acceptance.junit.Resource)19 DashboardView (org.jenkinsci.test.acceptance.plugins.dashboard_view.DashboardView)19 File (java.io.File)17 DockerContainer (org.jenkinsci.test.acceptance.docker.DockerContainer)17 WithCredentials (org.jenkinsci.test.acceptance.junit.WithCredentials)17 PublishGlobalPublisher (org.jenkinsci.test.acceptance.plugins.publish_over.PublishGlobalPublisher)17 SvnContainer (org.jenkinsci.test.acceptance.docker.fixtures.SvnContainer)16 SubversionScm (org.jenkinsci.test.acceptance.plugins.subversion.SubversionScm)13 ListView (org.jenkinsci.test.acceptance.po.ListView)12 Pattern (java.util.regex.Pattern)11