use of org.jenkinsci.test.acceptance.po.Build in project acceptance-test-harness by jenkinsci.
the class FreestyleJobTest method buildParametrized.
@Test
@Category(SmokeTest.class)
public void buildParametrized() {
FreeStyleJob j = jenkins.jobs.create(FreeStyleJob.class);
j.configure();
j.addParameter(StringParameter.class).setName("text").setDefault("foo").setDescription("Bar");
j.addParameter(PasswordParameter.class).setName("password").setDefault("foopass").setDescription("apass");
j.addShellStep("echo \">$text<\"");
j.save();
Build build = j.scheduleBuild(Collections.singletonMap("text", "asdf")).waitUntilFinished();
assertThat(build.getConsole(), containsString(">asdf<"));
}
use of org.jenkinsci.test.acceptance.po.Build in project acceptance-test-harness by jenkinsci.
the class FreestyleJobTest method archiveArtifacts.
@Test
@Category(SmokeTest.class)
public void archiveArtifacts() {
FreeStyleJob j = jenkins.jobs.create(FreeStyleJob.class);
j.configure();
j.addShellStep("echo 'yes' > include; echo 'no' > exclude;");
ArtifactArchiver archiver = j.addPublisher(ArtifactArchiver.class);
archiver.includes("**/*include*");
archiver.excludes("exclude");
j.save();
Build build = j.scheduleBuild().waitUntilFinished();
assertThat(build.getArtifact("exclude"), pageObjectDoesNotExist());
Artifact include = build.getArtifact("include");
assertThat(include, pageObjectExists());
assertThat(include.getTextContent(), equalTo("yes"));
}
use of org.jenkinsci.test.acceptance.po.Build in project acceptance-test-harness by jenkinsci.
the class ParameterizedTriggerTest method triggerWithNonStandardArchiver.
@Test
@WithPlugins({ "compress-artifacts", "matrix-project" /*JENKINS-33910*/
})
@Issue("JENKINS-28980")
public void triggerWithNonStandardArchiver() {
CompressingArtifactManager.setup(jenkins);
FreeStyleJob target = jenkins.jobs.create();
target.configure();
target.addParameter(StringParameter.class).setName("PARAM");
target.addShellStep("test 'value' = $PARAM");
target.save();
FreeStyleJob trigger = jenkins.jobs.create();
trigger.configure();
trigger.addShellStep("echo 'PARAM=value' > my.properties");
ArtifactArchiver archiver = trigger.addPublisher(ArtifactArchiver.class);
archiver.includes("my.properties");
ParameterizedTrigger step = trigger.addPublisher(ParameterizedTrigger.class);
TriggerConfig config = step.getTriggerConfig(0);
config.projects.set(target.name);
FileBuildParameters params = config.addParameter(FileBuildParameters.class);
params.file.set("my.properties");
params.failIfMissing.check();
trigger.save();
trigger.startBuild().shouldSucceed();
Build downstream = target.build(1);
downstream.shouldSucceed();
}
use of org.jenkinsci.test.acceptance.po.Build in project acceptance-test-harness by jenkinsci.
the class PrioritySorterPluginTest method match_jobs_by_name.
@Test
public void match_jobs_by_name() {
PriorityConfig priority = jenkins.action(PriorityConfig.class);
priority.configure();
Group low = priority.addGroup();
low.priority.select("5");
low.pattern("low_priority");
Group high = priority.addGroup();
high.priority.select("1");
high.pattern("high_priority");
priority.save();
FreeStyleJob lowPriority = jenkins.jobs.create(FreeStyleJob.class, "low_priority");
tieToLabel(lowPriority, LABEL);
Build plBuild = lowPriority.scheduleBuild();
FreeStyleJob highPriority = jenkins.jobs.create(FreeStyleJob.class, "high_priority");
tieToLabel(highPriority, LABEL);
Build hpBuild = highPriority.scheduleBuild();
slave.configure();
slave.setLabels(LABEL);
slave.save();
hpBuild.shouldSucceed();
plBuild.shouldSucceed();
assertThat(slave, runBuildsInOrder(highPriority, lowPriority));
}
use of org.jenkinsci.test.acceptance.po.Build in project acceptance-test-harness by jenkinsci.
the class PrioritySorterPluginTest method match_jobs_by_view.
@Test
public void match_jobs_by_view() {
FreeStyleJob p2 = jenkins.views.create(ListView.class, "normal").jobs.create(FreeStyleJob.class, "P2");
tieToLabel(p2, LABEL);
FreeStyleJob p1 = jenkins.views.create(ListView.class, "prioritized").jobs.create(FreeStyleJob.class, "P1");
tieToLabel(p1, LABEL);
PriorityConfig priority = jenkins.action(PriorityConfig.class);
priority.configure();
final Group low = priority.addGroup();
low.priority.select("5");
low.byView("normal");
final Group high = priority.addGroup();
high.priority.select("1");
high.byView("prioritized");
priority.save();
Build p2b = p2.scheduleBuild();
Build p1b = p1.scheduleBuild();
// Set label after scheduling build so the test is deterministic
slave.configure();
slave.setLabels(LABEL);
slave.save();
p1b.shouldSucceed();
p2b.shouldSucceed();
assertThat(slave, runBuildsInOrder(p1, p2));
}
Aggregations