use of org.kohsuke.stapler.StaplerRequest in project blueocean-plugin by jenkinsci.
the class BitbucketServerScmContentProviderTest method updateContent.
@Test
public void updateContent() throws UnirestException, IOException {
String credentialId = createCredential(BitbucketServerScm.ID);
StaplerRequest staplerRequest = mockStapler();
MultiBranchProject mbp = mockMbp(credentialId);
GitContent content = new GitContent.Builder().autoCreateBranch(true).base64Data("bm9kZXsKICBlY2hvICdoZWxsbyB3b3JsZCEnCn0K").branch("master").message("another commit").owner("TESTP").path("Jenkinsfile").repo("pipeline-demo-test").commitId("0bae0ddbed2e897d3b44abc3aca9ba26e2f61710").build();
when(staplerRequest.bindJSON(Mockito.eq(BitbucketScmSaveFileRequest.class), Mockito.any(JSONObject.class))).thenReturn(new BitbucketScmSaveFileRequest(content));
String request = "{\n" + " \"content\" : {\n" + " \"message\" : \"another commit\",\n" + " \"path\" : \"Jenkinsfile\",\n" + " \"branch\" : \"master\",\n" + " \"repo\" : \"pipeline-demo-test\",\n" + " \"commitId\" : \"0bae0ddbed2e897d3b44abc3aca9ba26e2f61710\",\n" + " \"base64Data\" : " + "\"bm9kZXsKICBlY2hvICdoZWxsbyB3b3JsZCEnCn0K\"" + " }\n" + "}";
when(staplerRequest.getReader()).thenReturn(new BufferedReader(new StringReader(request), request.length()));
ScmFile<GitContent> respContent = (ScmFile<GitContent>) new BitbucketServerScmContentProvider().saveContent(staplerRequest, mbp);
assertEquals("Jenkinsfile", respContent.getContent().getName());
assertEquals("e587b620844b1b230783976f00cfb8383488aeca", respContent.getContent().getCommitId());
assertEquals("pipeline-demo-test", respContent.getContent().getRepo());
assertEquals("TESTP", respContent.getContent().getOwner());
assertEquals("master", respContent.getContent().getBranch());
}
use of org.kohsuke.stapler.StaplerRequest in project blueocean-plugin by jenkinsci.
the class BitbucketServerScmContentProviderTest method newContent.
@Test
public void newContent() throws UnirestException, IOException {
String credentialId = createCredential(BitbucketServerScm.ID);
StaplerRequest staplerRequest = mockStapler();
MultiBranchProject mbp = mockMbp(credentialId);
GitContent content = new GitContent.Builder().autoCreateBranch(true).base64Data("bm9kZXsKICBlY2hvICdoZWxsbyB3b3JsZCEnCn0K").branch("master").message("new commit").owner("TESTP").path("README.md").repo("pipeline-demo-test").build();
when(staplerRequest.bindJSON(Mockito.eq(BitbucketScmSaveFileRequest.class), Mockito.any(JSONObject.class))).thenReturn(new BitbucketScmSaveFileRequest(content));
String request = "{\n" + " \"content\" : {\n" + " \"message\" : \"new commit\",\n" + " \"path\" : \"README.md\",\n" + " \"branch\" : \"master\",\n" + " \"repo\" : \"pipeline-demo-test\",\n" + " \"base64Data\" : " + "\"bm9kZXsKICBlY2hvICdoZWxsbyB3b3JsZCEnCn0K\"" + " }\n" + "}";
when(staplerRequest.getReader()).thenReturn(new BufferedReader(new StringReader(request), request.length()));
ScmFile<GitContent> respContent = (ScmFile<GitContent>) new BitbucketServerScmContentProvider().saveContent(staplerRequest, mbp);
assertEquals("README.md", respContent.getContent().getName());
assertEquals("a77840d4108db2befe6c616723eb3f4485af5d24", respContent.getContent().getCommitId());
assertEquals("pipeline-demo-test", respContent.getContent().getRepo());
assertEquals("TESTP", respContent.getContent().getOwner());
assertEquals("master", respContent.getContent().getBranch());
}
use of org.kohsuke.stapler.StaplerRequest in project blueocean-plugin by jenkinsci.
the class BitbucketServerScmContentProviderTest method mockStapler.
private StaplerRequest mockStapler() {
mockStatic(Stapler.class);
StaplerRequest staplerRequest = mock(StaplerRequest.class);
when(Stapler.getCurrentRequest()).thenReturn(staplerRequest);
when(staplerRequest.getRequestURI()).thenReturn("http://localhost:8080/jenkins/blue/rest/");
when(staplerRequest.getParameter("path")).thenReturn("Jenkinsfile");
when(staplerRequest.getParameter("repo")).thenReturn("pipeline-demo-test");
return staplerRequest;
}
use of org.kohsuke.stapler.StaplerRequest in project blueocean-plugin by jenkinsci.
the class BitbucketCloudScmContentProviderTest method unauthorizedAccessToContentShouldFail.
@Test
public void unauthorizedAccessToContentShouldFail() throws UnirestException, IOException {
User alice = User.get("alice");
alice.setFullName("Alice Cooper");
alice.addProperty(new Mailer.UserProperty("alice@jenkins-ci.org"));
String aliceCredentialId = createCredential(BitbucketCloudScm.ID, "cloud", alice);
StaplerRequest staplerRequest = mockStapler();
MultiBranchProject mbp = mockMbp(aliceCredentialId, alice);
try {
// Bob trying to access content but his credential is not setup so should fail
new BitbucketCloudScmContentProvider().getContent(staplerRequest, mbp);
} catch (ServiceException.PreconditionRequired e) {
assertEquals("Can't access content from Bitbucket: no credential found", e.getMessage());
return;
}
fail("Should have failed with PreConditionException");
}
use of org.kohsuke.stapler.StaplerRequest in project blueocean-plugin by jenkinsci.
the class BitbucketCloudScmContentProviderTest method mockStapler.
private StaplerRequest mockStapler() {
mockStatic(Stapler.class);
StaplerRequest staplerRequest = mock(StaplerRequest.class);
when(Stapler.getCurrentRequest()).thenReturn(staplerRequest);
when(staplerRequest.getRequestURI()).thenReturn("http://localhost:8080/jenkins/blue/rest/");
when(staplerRequest.getParameter("path")).thenReturn("Jenkinsfile");
when(staplerRequest.getParameter("repo")).thenReturn("demo1");
when(staplerRequest.getParameter("scmId")).thenReturn(BitbucketCloudScm.ID);
return staplerRequest;
}
Aggregations