Package com.atlassian.jira.rest.client.api.domain

Examples of com.atlassian.jira.rest.client.api.domain.Issue


        testLinkIssuesImpl(Comment.createWithRoleLevel("A comment about linking", "Users"));
    }

  private void testLinkIssuesImpl(@Nullable Comment commentInput) {
    final IssueRestClient issueClient = client.getIssueClient();
    final Issue originalIssue = issueClient.getIssue("TST-7").claim();
    int origNumComments = Iterables.size(originalIssue.getComments());
    assertFalse(originalIssue.getIssueLinks().iterator().hasNext());

    issueClient.linkIssue(new LinkIssuesInput("TST-7", "TST-6", "Duplicate", commentInput)).claim();

    final Issue linkedIssue = issueClient.getIssue("TST-7").claim();
    assertEquals(1, Iterables.size(linkedIssue.getIssueLinks()));
    final IssueLink addedLink = linkedIssue.getIssueLinks().iterator().next();
    assertEquals("Duplicate", addedLink.getIssueLinkType().getName());
    assertEquals("TST-6", addedLink.getTargetIssueKey());
    assertEquals(IssueLinkType.Direction.OUTBOUND, addedLink.getIssueLinkType().getDirection());

    final int expectedNumComments = commentInput != null ? origNumComments + 1 : origNumComments;
    assertEquals(expectedNumComments, Iterables.size(linkedIssue.getComments()));
    if (commentInput != null) {
      final Comment comment = linkedIssue.getComments().iterator().next();
      assertEquals(commentInput.getBody(), comment.getBody());
      assertEquals(IntegrationTestUtil.USER_ADMIN, comment.getAuthor());
      assertEquals(commentInput.getVisibility(), comment.getVisibility());
    } else {
      assertFalse(linkedIssue.getComments().iterator().hasNext());
    }


    final Issue targetIssue = issueClient.getIssue("TST-6").claim();
    final IssueLink targetLink = targetIssue.getIssueLinks().iterator().next();
    assertEquals(IssueLinkType.Direction.INBOUND, targetLink.getIssueLinkType().getDirection());
    assertEquals("Duplicate", targetLink.getIssueLinkType().getName());
  }
View Full Code Here


    if (!doesJiraSupportAddingAttachment()) {
      return;
    }
    final IssueRestClient issueClient = client.getIssueClient();
    final Issue issue = issueClient.getIssue("TST-3").claim();
    assertFalse(issue.getAttachments().iterator().hasNext());

    String str = "Wojtek";
    final String filename1 = "my-test-file";
    issueClient.addAttachment(issue.getAttachmentsUri(), new ByteArrayInputStream(str.getBytes("UTF-8")), filename1).claim();
    final String filename2 = "my-picture.png";
    issueClient.addAttachment(issue.getAttachmentsUri(), AsynchronousIssueRestClientTest.class
        .getResourceAsStream("/attachment-test/transparent-png.png"), filename2).claim();

    final Issue issueWithAttachments = issueClient.getIssue("TST-3").claim();
    final Iterable<Attachment> attachments = issueWithAttachments.getAttachments();
    assertEquals(2, Iterables.size(attachments));
    final Iterable<String> attachmentsNames = Iterables.transform(attachments, new Function<Attachment, String>() {
      @Override
      public String apply(@Nullable Attachment from) {
        return from.getFilename();
View Full Code Here

  }

  @Test
  public void testAddAttachmentWithUtf8InNameAndBody() throws IOException {
    final IssueRestClient issueClient = client.getIssueClient();
    final Issue issue = issueClient.getIssue("TST-3").claim();
    assertFalse(issue.getAttachments().iterator().hasNext());

    final ByteArrayInputStream byteArrayInputStream = new ByteArrayInputStream(UTF8_FILE_BODY.getBytes("UTF-8"));
    issueClient.addAttachment(issue.getAttachmentsUri(), byteArrayInputStream, UTF8_FILE_NAME).claim();

    final Issue issueWithAttachments = issueClient.getIssue("TST-3").claim();
    final Iterable<Attachment> attachments = issueWithAttachments.getAttachments();
    assertEquals(1, Iterables.size(attachments));
    final Attachment attachment = attachments.iterator().next();
    assertThat(attachment.getFilename(), equalTo(UTF8_FILE_NAME));

    assertTrue(IOUtils.contentEquals(new ByteArrayInputStream(UTF8_FILE_BODY.getBytes("UTF-8")),
View Full Code Here

  public void testAddAttachments() throws IOException {
    if (!doesJiraSupportAddingAttachment()) {
      return;
    }
    final IssueRestClient issueClient = client.getIssueClient();
    final Issue issue = issueClient.getIssue("TST-4").claim();
    assertFalse(issue.getAttachments().iterator().hasNext());

    final AttachmentInput[] attachmentInputs = new AttachmentInput[3];
    for (int i = 1; i <= 3; i++) {
      attachmentInputs[i - 1] = new AttachmentInput("my-test-file-" + i + ".txt", new ByteArrayInputStream((
          "content-of-the-file-" + i).getBytes("UTF-8")));
    }
    issueClient.addAttachments(issue.getAttachmentsUri(), attachmentInputs).claim();

    final Issue issueWithAttachments = issueClient.getIssue("TST-4").claim();
    final Iterable<Attachment> attachments = issueWithAttachments.getAttachments();
    assertEquals(3, Iterables.size(attachments));
    Pattern pattern = Pattern.compile("my-test-file-(\\d)\\.txt");
    for (Attachment attachment : attachments) {
      assertTrue(pattern.matcher(attachment.getFilename()).matches());
      final Matcher matcher = pattern.matcher(attachment.getFilename());
View Full Code Here

  }

  @Test
  public void testAddAttachmentsWithUtf8InNameAndBody() throws IOException {
    final IssueRestClient issueClient = client.getIssueClient();
    final Issue issue = issueClient.getIssue("TST-4").claim();
    assertFalse(issue.getAttachments().iterator().hasNext());

    final AttachmentInput[] attachmentInputs = new AttachmentInput[3];
    final String[] names = new String[3];
    final String[] contents = new String[3];
    for (int i = 0; i < 3; i++) {
      names[i] = UTF8_FILE_NAME + "-" + i + ".txt";
      contents[i] = "content-of-the-file-" + i + " with some utf8: " + UTF8_FILE_BODY;
      attachmentInputs[i] = new AttachmentInput(names[i], new ByteArrayInputStream(contents[i].getBytes("UTF-8")));
    }
    issueClient.addAttachments(issue.getAttachmentsUri(), attachmentInputs).claim();

    final Issue issueWithAttachments = issueClient.getIssue("TST-4").claim();
    final Iterable<Attachment> attachments = issueWithAttachments.getAttachments();
    assertEquals(3, Iterables.size(attachments));
    Pattern pattern = Pattern.compile(".*-(\\d)\\.txt");
    for (Attachment attachment : attachments) {
      assertTrue(pattern.matcher(attachment.getFilename()).matches());
      final Matcher matcher = pattern.matcher(attachment.getFilename());
View Full Code Here

  public void testAddFileAttachments() throws IOException {
    if (!doesJiraSupportAddingAttachment()) {
      return;
    }
    final IssueRestClient issueClient = client.getIssueClient();
    final Issue issue = issueClient.getIssue("TST-5").claim();
    assertFalse(issue.getAttachments().iterator().hasNext());

    final File tempFile = File.createTempFile("jim-integration-test", ".txt");
    tempFile.deleteOnExit();
    FileWriter writer = new FileWriter(tempFile);
    writer.write("This is the content of my file which I am going to upload to JIRA for testing.");
    writer.close();
    issueClient.addAttachments(issue.getAttachmentsUri(), tempFile).claim();

    final Issue issueWithAttachments = issueClient.getIssue("TST-5").claim();
    final Iterable<Attachment> attachments = issueWithAttachments.getAttachments();
    assertEquals(1, Iterables.size(attachments));
    assertTrue(IOUtils.contentEquals(new FileInputStream(tempFile),
        issueClient.getAttachment(attachments.iterator().next().getContentUri()).claim()));
  }
View Full Code Here

  }

  @Test
  public void testAddFileAttachmentWithUtf8InNameAndBody() throws IOException {
    final IssueRestClient issueClient = client.getIssueClient();
    final Issue issue = issueClient.getIssue("TST-5").claim();
    assertFalse(issue.getAttachments().iterator().hasNext());

    final File tempFile = File.createTempFile(UTF8_FILE_NAME, ".txt");
    tempFile.deleteOnExit();
    FileWriter writer = new FileWriter(tempFile);
    writer.write(UTF8_FILE_BODY);
    writer.close();
    issueClient.addAttachments(issue.getAttachmentsUri(), tempFile).claim();

    final Issue issueWithAttachments = issueClient.getIssue("TST-5").claim();
    final Iterable<Attachment> attachments = issueWithAttachments.getAttachments();
    assertEquals(1, Iterables.size(attachments));
    final Attachment firstAttachment = attachments.iterator().next();
    assertTrue(IOUtils.contentEquals(new FileInputStream(tempFile),
        issueClient.getAttachment(firstAttachment.getContentUri()).claim()));
    assertThat(firstAttachment.getFilename(), equalTo(tempFile.getName()));
View Full Code Here

    setUserLanguageToEnUk();
    administration.permissionSchemes().scheme("Anonymous Permission Scheme").grantPermissionToGroup(15, "");
    assertEquals(IntegrationTestUtil.USER_ADMIN, client.getIssueClient().getIssue("TST-5").claim().getAssignee());
    navigation.logout();
    navigation.issue().addComment("ANNON-1", "my nice comment");
    final Issue issue = client.getIssueClient().getIssue("ANNON-1").claim();
    assertEquals(1, Iterables.size(issue.getComments()));
    final Comment comment = issue.getComments().iterator().next();
    assertEquals("my nice comment", comment.getBody());
    if (isJira5xOrNewer()) {
      assertNotNull(comment.getId());
    } else {
      assertNull(comment.getId());
View Full Code Here

  public void testGetIssueWithNoViewWatchersPermission() {
    setUser1();
    assertTrue(client.getIssueClient().getIssue("TST-1").claim().getWatchers().isWatching());

    setUser2();
    final Issue issue = client.getIssueClient().getIssue("TST-1").claim();
    assertFalse(issue.getWatchers().isWatching());
    client.getIssueClient().watch(issue.getWatchers().getSelf()).claim();
    final Issue watchedIssue = client.getIssueClient().getIssue("TST-1").claim();
    assertTrue(watchedIssue.getWatchers().isWatching());
    assertEquals(2, watchedIssue.getWatchers().getNumWatchers());

    // although there are 2 watchers, only one is listed with details - the caller itself, as the caller does not
    // have view watchers and voters permission
    assertThat(client.getIssueClient().getWatchers(watchedIssue.getWatchers().getSelf()).claim().getUsers(),
        containsInAnyOrder(USER2));
  }
View Full Code Here

        containsInAnyOrder(USER2));
  }

  @Test
  public void testTransition() throws Exception {
    final Issue issue = client.getIssueClient().getIssue("TST-1").claim();
    final Iterable<Transition> transitions = client.getIssueClient().getTransitions(issue).claim();
    assertEquals(4, Iterables.size(transitions));
    final Transition startProgressTransition = new Transition("Start Progress", IntegrationTestUtil.START_PROGRESS_TRANSITION_ID, Collections
        .<Transition.Field>emptyList());
    assertTrue(Iterables.contains(transitions, startProgressTransition));

    client.getIssueClient().transition(issue, new TransitionInput(IntegrationTestUtil.START_PROGRESS_TRANSITION_ID,
        Collections.<FieldInput>emptyList(), Comment.valueOf("My test comment"))).claim();
    final Issue transitionedIssue = client.getIssueClient().getIssue("TST-1").claim();
    assertEquals("In Progress", transitionedIssue.getStatus().getName());
    final Iterable<Transition> transitionsAfterTransition = client.getIssueClient().getTransitions(issue).claim();
    assertFalse(Iterables.contains(transitionsAfterTransition, startProgressTransition));
    final Transition stopProgressTransition = new Transition("Stop Progress", IntegrationTestUtil.STOP_PROGRESS_TRANSITION_ID, Collections
        .<Transition.Field>emptyList());
    assertTrue(Iterables.contains(transitionsAfterTransition, stopProgressTransition));
View Full Code Here

TOP

Related Classes of com.atlassian.jira.rest.client.api.domain.Issue

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.