當前位置: 首頁>>代碼示例>>Java>>正文


Java JenkinsRule.WebClient方法代碼示例

本文整理匯總了Java中org.jvnet.hudson.test.JenkinsRule.WebClient方法的典型用法代碼示例。如果您正苦於以下問題:Java JenkinsRule.WebClient方法的具體用法?Java JenkinsRule.WebClient怎麽用?Java JenkinsRule.WebClient使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在org.jvnet.hudson.test.JenkinsRule的用法示例。


在下文中一共展示了JenkinsRule.WebClient方法的15個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Java代碼示例。

示例1: authenticatedAccess

import org.jvnet.hudson.test.JenkinsRule; //導入方法依賴的package包/類
/**
 *
 * @throws Exception
 */
@PresetData(NO_ANONYMOUS_READACCESS)
@Test
public void authenticatedAccess() throws Exception {
    final FreeStyleProject project = j.createFreeStyleProject("free");
    JenkinsRule.WebClient wc = j.createWebClient();
    wc.login("alice", "alice");
    try {
        // try with wrong job name
        wc.goTo("buildStatus/buildIcon?job=dummy");
        fail("should fail, because there is no job with this name");
    } catch (FailingHttpStatusCodeException x) {
        assertEquals(HTTP_NOT_FOUND, x.getStatusCode());
    }
    wc.goTo("buildStatus/buildIcon?job=free", "image/svg+xml");
    j.buildAndAssertSuccess(project);
}
 
開發者ID:SxMShaDoW,項目名稱:embeddable-badges-plugin,代碼行數:21,代碼來源:PublicBadgeActionTest.java

示例2: validAnonymousViewStatusAccess

import org.jvnet.hudson.test.JenkinsRule; //導入方法依賴的package包/類
/**
 *
 * @throws Exception
 */
@Test
public void validAnonymousViewStatusAccess() throws Exception {

    final SecurityRealm realm = j.createDummySecurityRealm();
    j.jenkins.setSecurityRealm(realm);
    GlobalMatrixAuthorizationStrategy auth = new GlobalMatrixAuthorizationStrategy();
    auth.add(VIEW_STATUS, "anonymous");
    j.getInstance().setSecurityRealm(realm);
    j.getInstance().setAuthorizationStrategy(auth);

    final FreeStyleProject project = j.createFreeStyleProject("free");

    JenkinsRule.WebClient wc = j.createWebClient();
    try {
        // try with wrong job name
        wc.goTo("buildStatus/buildIcon?job=dummy");
        fail("should fail, because there is no job with this name");
    } catch (FailingHttpStatusCodeException x) {
        assertEquals(HTTP_NOT_FOUND, x.getStatusCode());
    }

    wc.goTo("buildStatus/buildIcon?job=free", "image/svg+xml");
    j.buildAndAssertSuccess(project);
   
}
 
開發者ID:SxMShaDoW,項目名稱:embeddable-badges-plugin,代碼行數:30,代碼來源:PublicBadgeActionTest.java

示例3: validAnonymousAccess

import org.jvnet.hudson.test.JenkinsRule; //導入方法依賴的package包/類
/**
 *
 * @throws Exception
 */
@PresetData(ANONYMOUS_READONLY)
@Test
public void validAnonymousAccess() throws Exception {
    final FreeStyleProject project = j.createFreeStyleProject("free");
    JenkinsRule.WebClient wc = j.createWebClient();
    try {
        // try with wrong job name
        wc.goTo("buildStatus/buildIcon?job=dummy");
        fail("should fail, because there is no job with this name");
    } catch (FailingHttpStatusCodeException x) {
        assertEquals(HTTP_NOT_FOUND, x.getStatusCode());
    }

    // try with correct job name
    wc.goTo("buildStatus/buildIcon?job=free", "image/svg+xml");
    j.buildAndAssertSuccess(project);
}
 
開發者ID:SxMShaDoW,項目名稱:embeddable-badges-plugin,代碼行數:22,代碼來源:PublicBadgeActionTest.java

示例4: showProblems

import org.jvnet.hudson.test.JenkinsRule; //導入方法依賴的package包/類
@Test
public void showProblems() throws Exception {
    disposer = AsyncResourceDisposer.get();
    disposer.dispose(new FailingDisposable());

    Thread.sleep(1000);

    JenkinsRule.WebClient wc = j.createWebClient();

    assertFalse(disposer.isActivated());
    HtmlPage manage = wc.goTo("manage");
    assertThat(manage.asText(), not(containsString("There are resources Jenkins was not able to dispose automatically")));

    Whitebox.setInternalState(disposer.getBacklog().iterator().next(), "registered", new Date(0)); // Make it decades old

    assertTrue(disposer.isActivated());
    manage = wc.goTo("manage");
    assertThat(manage.asText(), containsString("There are resources Jenkins was not able to dispose automatically"));
    HtmlPage report = wc.goTo(disposer.getUrl());
    assertThat(report.asText(), containsString("Failing disposable"));
    assertThat(report.asText(), containsString("IOException: Unable to dispose"));
}
 
開發者ID:jenkinsci,項目名稱:resource-disposer-plugin,代碼行數:23,代碼來源:AsyncResourceDisposerTest.java

示例5: shouldCreatePipelineAndViewAndSuccessfullyBuildDefinition

import org.jvnet.hudson.test.JenkinsRule; //導入方法依賴的package包/類
private void shouldCreatePipelineAndViewAndSuccessfullyBuildDefinition(String script) throws Exception {
    String projectName = "TaskPipeline";
    WorkflowJob pipeline = jenkins.getInstance().createProject(WorkflowJob.class, projectName);
    pipeline.setDefinition(new CpsFlowDefinition(script, true));

    pipeline.scheduleBuild(0, new BuildCommand.CLICause());
    jenkins.waitUntilNoActivity();
    assertThat(pipeline.getLastBuild().getResult(), is(Result.SUCCESS));

    String viewName = "TaskPipelineView";
    WorkflowPipelineView view = new WorkflowPipelineView(viewName);
    view.setProject(projectName);

    jenkins.getInstance().addView(view);

    JenkinsRule.WebClient client = jenkins.createWebClient();

    Page viewPage = client.getPage(new URL(jenkins.getURL(), "/jenkins/view/" + viewName));
    assertThat(viewPage.getWebResponse().getStatusCode(), is(200));

    Page apiPage = client.getPage(new URL(jenkins.getURL(), "/jenkins/view/" + viewName + "/api/json"));
    assertThat(apiPage.getWebResponse().getStatusCode(), is(200));
}
 
開發者ID:Diabol,項目名稱:delivery-pipeline-plugin,代碼行數:24,代碼來源:TaskIntegrationTest.java

示例6: shouldNotSeeMigrationButton

import org.jvnet.hudson.test.JenkinsRule; //導入方法依賴的package包/類
@Test
public void shouldNotSeeMigrationButton() throws IOException, SAXException {
    JenkinsRule.WebClient webClient = jenkinsRule.createWebClient();
    DomElement configureSection = webClient.goTo("configure").getElementsByName("AwsCodeCommitTriggerPlugin").get(0);
    List<?> buttons = configureSection.getByXPath("//button[contains(.,'Migration')]");
    Assertions.assertThat(buttons).isEmpty();
}
 
開發者ID:riboseinc,項目名稱:aws-codecommit-trigger-plugin,代碼行數:8,代碼來源:MigrateTo2xJenkinsIT.java

示例7: showWhenCloudsConfigured

import org.jvnet.hudson.test.JenkinsRule; //導入方法依賴的package包/類
@Test
public void showWhenCloudsConfigured() throws Exception {
    JenkinsRule.WebClient webClient = j.createWebClient();
    String content = webClient.goTo("").getWebResponse().getContentAsString();
    assertThat(content, not(containsString("Cloud Statistics")));
    assertThat(content, not(containsString("#cloudstats")));

    j.jenkins.clouds.add(new TestCloud("asdf"));
    content = webClient.goTo("").getWebResponse().getContentAsString();
    assertThat(content, containsString("Cloud Statistics"));
    assertThat(content, containsString("#cloudstats"));
}
 
開發者ID:jenkinsci,項目名稱:cloud-stats-plugin,代碼行數:13,代碼來源:StatsWidgetTest.java

示例8: doNotShowWhenNotAuthenticated

import org.jvnet.hudson.test.JenkinsRule; //導入方法依賴的package包/類
@Test @PresetData(PresetData.DataSet.ANONYMOUS_READONLY)
public void doNotShowWhenNotAuthenticated() throws Exception {
    j.jenkins.clouds.add(new TestCloud("asdf"));
    JenkinsRule.WebClient webClient = j.createWebClient();
    String content = webClient.goTo("").getWebResponse().getContentAsString();
    assertThat(content, not(containsString("Cloud Statistics")));
    assertThat(content, not(containsString("#cloudstats")));
}
 
開發者ID:jenkinsci,項目名稱:cloud-stats-plugin,代碼行數:9,代碼來源:StatsWidgetTest.java

示例9: testFingerprintUi

import org.jvnet.hudson.test.JenkinsRule; //導入方法依賴的package包/類
@Test
@LocalData
public void testFingerprintUi() throws IOException, InterruptedException, SAXException {
    JenkinsRule.WebClient web = j.createWebClient();
    HtmlPage page = web.goTo("dockerhub-webhook/details/e9d6eb6cd6a7bfcd2bd622765a87893f");
    j.assertStringContains(page.asText(), "Build results for push of csanchez/jenkins-swarm-slave");
}
 
開發者ID:jenkinsci,項目名稱:dockerhub-notification-plugin,代碼行數:8,代碼來源:BackCompat102Test.java

示例10: rawContainerDockerInspectSubmissions

import org.jvnet.hudson.test.JenkinsRule; //導入方法依賴的package包/類
@Test
public void rawContainerDockerInspectSubmissions() throws Exception {
    
    // Read data from resources
    String inspectData = JSONSamples.inspectContainerData.readString();
    InspectContainerResponse inspectResponse = JSONSamples.inspectContainerData.
            readObject(InspectContainerResponse[].class)[0];
    final String containerId = inspectResponse.getId();
    final String imageId = inspectResponse.getImageId();
    
    // Init system data
    JenkinsRule.WebClient client = j.createWebClient();
    final DockerTraceabilityRootAction action = DockerTraceabilityRootAction.getInstance();
    assertNotNull(action);
         
    // Prepare a run with Fingerprints and referenced facets
    createTestBuildRefFacet(imageId, "test");
    
    // Submit JSON
    action.doSubmitContainerStatus(inspectData, null, null, null, 0, null, null);
    
    // Ensure there's a fingerprint for container, which refers the image
    final DockerDeploymentFacet containerFacet = assertExistsDeploymentFacet(containerId, imageId);
    
    // Ensure there's a fingerprint for image
    final DockerDeploymentRefFacet containerRefFacet = assertExistsDeploymentRefFacet(containerId, imageId);
    
    // Try to call the actions method to retrieve the data
    final Page res;
    try {
        res = client.goTo("docker-traceability/rawContainerInfo?id="+containerId, null);
    } catch (Exception ex) {
        ex.getMessage();
        throw new AssertionError("Cannot get a response from rawInfo page", ex);
    }
    final String responseJSON = res.getWebResponse().getContentAsString();
    ObjectMapper mapper= new ObjectMapper();
    final InspectContainerResponse[] parsedData = mapper.readValue(responseJSON, InspectContainerResponse[].class);
    assertEquals(1, parsedData.length);       
}
 
開發者ID:jenkinsci,項目名稱:docker-traceability-plugin,代碼行數:41,代碼來源:DockerTraceabilityRootActionTest.java

示例11: containerIDs_CRUD

import org.jvnet.hudson.test.JenkinsRule; //導入方法依賴的package包/類
@Test
public void containerIDs_CRUD() throws Exception {
    // TODO: replace by a helper method from the branch
    JenkinsRule.WebClient client = j.createWebClient();
    @CheckForNull DockerTraceabilityRootAction action = null;
    for (Action rootAction : j.getInstance().getActions()) {
        if (rootAction instanceof DockerTraceabilityRootAction) {
            action = (DockerTraceabilityRootAction) rootAction;
            break;
        }
    }    
    assertNotNull(action);
    
    final String id1 = FingerprintTestUtil.generateDockerId("1");
    final String id2 = FingerprintTestUtil.generateDockerId("2");
    final String id3 = FingerprintTestUtil.generateDockerId("3");
    
    // Check consistency of create/update commands
    action.addContainerID(id1);
    assertEquals(1, action.getContainerIDs().size());
    action.addContainerID(id2);
    assertEquals(2, action.getContainerIDs().size());
    action.addContainerID(id2);
    assertEquals(2, action.getContainerIDs().size());
    
    // Remove data using API. First entry is non-existent
    action.doDeleteContainer(id3);
    assertEquals(2, action.getContainerIDs().size());
    action.doDeleteContainer(id1);
    assertEquals(1, action.getContainerIDs().size());
    action.doDeleteContainer(id1);
    assertEquals(1, action.getContainerIDs().size());
    
    // Reload the data and ensure the status has been persisted correctly
    action = new DockerTraceabilityRootAction();
    assertEquals(1, action.getContainerIDs().size());
    for (String id : action.getContainerIDs()) {
        assertEquals(id2, id);
    }
}
 
開發者ID:jenkinsci,項目名稱:docker-traceability-plugin,代碼行數:41,代碼來源:DockerTraceabilityRootActionTest.java

示例12: verifyUsernameInflightRequest

import org.jvnet.hudson.test.JenkinsRule; //導入方法依賴的package包/類
@Test
@Bug(24671)
public void verifyUsernameInflightRequest() throws Exception {
    r.jenkins.setSecurityRealm(r.createDummySecurityRealm());
    JenkinsRule.WebClient webClient = r.createWebClient().login("bob", "bob");
    MockSlowURLCall.seconds = 5;
    webClient.goTo("mockSlowURLCall/submit");
    InflightRequest request = MockSlowURLCall.request;
    assertNotNull(request);
    assertEquals("bob", request.userName);
    assertEquals(webClient.getContextPath() + "mockSlowURLCall/submit", request.url);
}
 
開發者ID:jenkinsci,項目名稱:support-core-plugin,代碼行數:13,代碼來源:InflightRequestTest.java

示例13: verifyRefererHeaderFromInflightRequest

import org.jvnet.hudson.test.JenkinsRule; //導入方法依賴的package包/類
@Test
@Bug(24671)
public void verifyRefererHeaderFromInflightRequest() throws Exception {
    JenkinsRule.WebClient webClient = r.createWebClient();

    URL refererUrl = new URL(webClient.getContextPath() + "mockSlowURLCall/submitReferer");

    ((HtmlPage) webClient.getPage(refererUrl)).getHtmlElementById("link").click();

    InflightRequest request = MockSlowURLCall.request;
    assertEquals(refererUrl.toString(), request.referer);
}
 
開發者ID:jenkinsci,項目名稱:support-core-plugin,代碼行數:13,代碼來源:InflightRequestTest.java

示例14: ui

import org.jvnet.hudson.test.JenkinsRule; //導入方法依賴的package包/類
@Test
public void ui() throws Exception {
    j.jenkins.clouds.add(new TestCloud("MyCloud"));
    j.jenkins.clouds.add(new TestCloud("PickyCloud"));

    String message = "Something bad happened. Something bad happened. Something bad happened. Something bad happened. Something bad happened. Something bad happened.";
    CloudStatistics cs = CloudStatistics.get();
    CloudStatistics.ProvisioningListener provisioningListener = CloudStatistics.ProvisioningListener.get();

    // When

    ProvisioningActivity.Id provisionId = new ProvisioningActivity.Id("MyCloud", "broken-template");
    provisioningListener.onStarted(provisionId);
    provisioningListener.onFailure(provisionId, new Exception(message));

    ProvisioningActivity.Id warnId = new ProvisioningActivity.Id("PickyCloud", null, "slave");
    provisioningListener.onStarted(warnId);
    Node slave = createTrackedSlave(warnId, j);
    ProvisioningActivity a = provisioningListener.onComplete(warnId, slave);
    a.attach(LAUNCHING, new PhaseExecutionAttachment(WARN, "There is something attention worthy"));

    slave.toComputer().waitUntilOnline();

    ProvisioningActivity.Id okId = new ProvisioningActivity.Id("MyCloud", "working-template", "future-slave");
    provisioningListener.onStarted(okId);
    slave = createTrackedSlave(okId, j);
    provisioningListener.onComplete(okId, slave);
    slave.toComputer().waitUntilOnline();
    Thread.sleep(500);
    slave.toComputer().doDoDelete();
    detectCompletionNow(); // Force completion detection

    Thread.sleep(500);

    // Then

    List<ProvisioningActivity> all = cs.getActivities();
    ProvisioningActivity failedToProvision = all.get(0);
    assertEquals(provisionId, failedToProvision.getId());
    assertEquals(FAIL, failedToProvision.getStatus());
    assertEquals(null, failedToProvision.getPhaseExecution(LAUNCHING));
    assertEquals(null, failedToProvision.getPhaseExecution(OPERATING));
    assertNotNull(failedToProvision.getPhaseExecution(COMPLETED));
    PhaseExecution failedProvisioning = failedToProvision.getPhaseExecution(PROVISIONING);
    assertEquals(FAIL, failedProvisioning.getStatus());
    PhaseExecutionAttachment.ExceptionAttachment exception = (PhaseExecutionAttachment.ExceptionAttachment) failedProvisioning.getAttachments().get(0);
    assertEquals(message, exception.getTitle());
    assertThat(exception.getText(), startsWith("java.lang.Exception: " + message));

    JenkinsRule.WebClient wc = j.createWebClient();
    j.jenkins.setAuthorizationStrategy(AuthorizationStrategy.UNSECURED);

    Page page = wc.goTo("cloud-stats").getAnchorByHref(j.jenkins.getRootUrl() + cs.getUrl(failedToProvision, failedProvisioning, exception)).click();
    assertThat(page.getWebResponse().getContentAsString(), containsString(message));

    ProvisioningActivity ok = all.get(1);
    assertEquals(okId, ok.getId());
    assertEquals(OK, ok.getStatus());
    assertNotNull(ok.getPhaseExecution(PROVISIONING));
    assertNotNull(ok.getPhaseExecution(LAUNCHING));
    assertNotNull(ok.getPhaseExecution(OPERATING));
    assertNotNull(ok.getPhaseExecution(COMPLETED));

    ProvisioningActivity warn = all.get(2);
    assertEquals(warnId, warn.getId());
    assertEquals(WARN, warn.getStatus());
    assertNotNull(warn.getPhaseExecution(PROVISIONING));
    assertNotNull(warn.getPhaseExecution(LAUNCHING));
    assertNotNull(warn.getPhaseExecution(OPERATING));
    assertNull(warn.getPhaseExecution(COMPLETED));
    PhaseExecution warnedLaunch = warn.getPhaseExecution(LAUNCHING);
    assertEquals(WARN, warnedLaunch.getStatus());
    assertEquals("There is something attention worthy", warnedLaunch.getAttachments().get(0).getTitle());

    assertEquals(CloudStatistics.get().getIndex().cloudHealth("MyCloud").getOverall().getPercentage(), 50D, 0);
    assertEquals(CloudStatistics.get().getIndex().cloudHealth("PickyCloud").getOverall().getPercentage(), 100D, 0);

    //j.interactiveBreak();
}
 
開發者ID:jenkinsci,項目名稱:cloud-stats-plugin,代碼行數:80,代碼來源:CloudStatisticsTest.java

示例15: submitEvent

import org.jvnet.hudson.test.JenkinsRule; //導入方法依賴的package包/類
/**
 * Checks {@link DockerEventsAction#doSubmitEvent(org.kohsuke.stapler.StaplerRequest, 
 * org.kohsuke.stapler.StaplerResponse, java.lang.String) }
 * @throws Exception test failure
 */
@Test
public void submitEvent() throws Exception {
    // Read data from resources
    String reportString = JSONSamples.submitReport.readString();
    DockerTraceabilityReport report = JSONSamples.submitReport.
            readObject(DockerTraceabilityReport.class);
    final String containerId = report.getContainer().getId();
    final String imageId = report.getImageId();
    
    // Init system data
    // TODO: replace by a helper method from the branch
    JenkinsRule.WebClient client = j.createWebClient();
    @CheckForNull DockerTraceabilityRootAction action = null;
    for (Action rootAction : j.getInstance().getActions()) {
        if (rootAction instanceof DockerTraceabilityRootAction) {
            action = (DockerTraceabilityRootAction) rootAction;
            break;
        }
    }    
    assertNotNull(action);
    
    // Prepare a run with Fingerprints and referenced facets
    createTestBuildRefFacet(imageId, "test");
    
    // Submit JSON
    action.doSubmitReport(reportString);
    
    // Ensure there's are expected fingerprints
    final DockerDeploymentFacet containerFacet = assertExistsDeploymentFacet(containerId, imageId);
    final DockerDeploymentRefFacet containerRefFacet = assertExistsDeploymentRefFacet(containerId, imageId);
    final DockerInspectImageFacet inspectImageFacet = assertExistsInspectImageFacet(imageId);
    
    // Try to call the actions method to retrieve the data
    final Page res;
    try {
        res = client.goTo("docker-traceability/rawImageInfo?id="+imageId, null);
    } catch (Exception ex) {
        ex.getMessage();
        throw new AssertionError("Cannot get a response from rawInfo page", ex);
    }
    final String responseJSON = res.getWebResponse().getContentAsString();
    ObjectMapper mapper= new ObjectMapper();
    final InspectImageResponse[] parsedData = mapper.readValue(responseJSON, InspectImageResponse[].class);
    assertEquals(1, parsedData.length); 
    InspectImageResponse apiResponse = parsedData[0];
    assertEquals(imageId, apiResponse.getId()); 
}
 
開發者ID:jenkinsci,項目名稱:docker-traceability-plugin,代碼行數:53,代碼來源:DockerTraceabilityRootActionTest.java


注:本文中的org.jvnet.hudson.test.JenkinsRule.WebClient方法示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。