Package com.gitblit.models.TicketModel

Examples of com.gitblit.models.TicketModel.Change


    // query non-existent ticket
    TicketModel nonExistent = service.getTicket(getRepository(), 0);
    assertNull(nonExistent);

    // create and insert a ticket
    Change c1 = newChange("testCreation() " + Long.toHexString(System.currentTimeMillis()));
    TicketModel ticket = service.createTicket(getRepository(), c1);
    assertTrue(ticket.number > 0);

    // retrieve ticket and compare
    TicketModel constructed = service.getTicket(getRepository(), ticket.number);
    compare(ticket, constructed);

    assertEquals(1, constructed.changes.size());

    // C1: create the ticket
    int changeCount = 0;
    c1 = newChange("testUpdates() " + Long.toHexString(System.currentTimeMillis()));
    ticket = service.createTicket(getRepository(), c1);
    assertTrue(ticket.number > 0);
    changeCount++;

    constructed = service.getTicket(getRepository(), ticket.number);
    compare(ticket, constructed);
    assertEquals(1, constructed.changes.size());

    // C2: set owner
    Change c2 = new Change("C2");
    c2.comment("I'll fix this");
    c2.setField(Field.responsible, c2.author);
    constructed = service.updateTicket(getRepository(), ticket.number, c2);
    assertNotNull(constructed);
    assertEquals(2, constructed.changes.size());
    assertEquals(c2.author, constructed.responsible);
    changeCount++;

    // C3: add a note
    Change c3 = new Change("C3");
    c3.comment("yeah, this is working");
    constructed = service.updateTicket(getRepository(), ticket.number, c3);
    assertNotNull(constructed);
    assertEquals(3, constructed.changes.size());
    changeCount++;

    if (service.supportsAttachments()) {
      // C4: add attachment
      Change c4 = new Change("C4");
      Attachment a = newAttachment();
      c4.addAttachment(a);
      constructed = service.updateTicket(getRepository(), ticket.number, c4);
      assertNotNull(constructed);
      assertTrue(constructed.hasAttachments());
      Attachment a1 = service.getAttachment(getRepository(), ticket.number, a.name);
      assertEquals(a.content.length, a1.content.length);
      assertTrue(Arrays.areEqual(a.content, a1.content));
      changeCount++;
    }

    // C5: close the issue
    Change c5 = new Change("C5");
    c5.comment("closing issue");
    c5.setField(Field.status, Status.Resolved);
    constructed = service.updateTicket(getRepository(), ticket.number, c5);
    assertNotNull(constructed);
    changeCount++;
    assertTrue(constructed.isClosed());
    assertEquals(changeCount, constructed.changes.size());

    List<TicketModel> allTickets = service.getTickets(getRepository());
    List<TicketModel> openTickets = service.getTickets(getRepository(), new TicketFilter() {
      @Override
      public boolean accept(TicketModel ticket) {
        return ticket.isOpen();
      }
    });
    List<TicketModel> closedTickets = service.getTickets(getRepository(), new TicketFilter() {
      @Override
      public boolean accept(TicketModel ticket) {
        return ticket.isClosed();
      }
    });
    assertTrue(allTickets.size() > 0);
    assertEquals(1, openTickets.size());
    assertEquals(1, closedTickets.size());

    // build a new Lucene index
    service.reindex(getRepository());
    List<QueryResult> hits = service.searchFor(getRepository(), "working", 1, 10);
    assertEquals(1, hits.size());

    // reindex a ticket
    ticket = allTickets.get(0);
    Change change = new Change("reindex");
    change.comment("this is a test of reindexing a ticket");
    service.updateTicket(getRepository(), ticket.number, change);
    ticket = service.getTicket(getRepository(), ticket.number);

    hits = service.searchFor(getRepository(), "reindexing", 1, 10);
    assertEquals(1, hits.size());
View Full Code Here


  }

  @Test
  public void testChangeComment() throws Exception {
    // C1: create the ticket
    Change c1 = newChange("testChangeComment() " + Long.toHexString(System.currentTimeMillis()));
    TicketModel ticket = service.createTicket(getRepository(), c1);
    assertTrue(ticket.number > 0);
    assertTrue(ticket.changes.get(0).hasComment());

    ticket = service.updateComment(ticket, c1.comment.id, "E1", "I changed the comment");
View Full Code Here

  }

  @Test
  public void testDeleteComment() throws Exception {
    // C1: create the ticket
    Change c1 = newChange("testDeleteComment() " + Long.toHexString(System.currentTimeMillis()));
    TicketModel ticket = service.createTicket(getRepository(), c1);
    assertTrue(ticket.number > 0);
    assertTrue(ticket.changes.get(0).hasComment());

    ticket = service.deleteComment(ticket, c1.comment.id, "D1");
View Full Code Here

  }



  private Change newChange(String summary) {
    Change change = new Change("C1");
    change.setField(Field.title, summary);
    change.setField(Field.body, "this is my description");
    change.setField(Field.labels, "helpdesk");
    change.comment("my comment");
    return change;
  }
View Full Code Here

    assertTrue(ticket.hasLabel("helpdesk"));
  }

  @Test
  public void testNotifier() throws Exception {
    Change kernel = new Change("james");
    kernel.setField(Field.title, "Sample ticket");
    kernel.setField(Field.body, "this **is** my sample body\n\n- I hope\n- you really\n- *really* like it");
    kernel.setField(Field.status, Status.New);
    kernel.setField(Field.type, Type.Proposal);

    kernel.comment("this is a sample comment on a kernel change");

    Patchset patchset = new Patchset();
    patchset.insertions = 100;
    patchset.deletions = 10;
    patchset.number = 1;
    patchset.rev = 25;
    patchset.tip = "50f57913f816d04a16b7407134de5d8406421f37";
    kernel.patchset = patchset;

    TicketModel ticket = service.createTicket(getRepository(), 0L, kernel);

    Change merge = new Change("james");
    merge.setField(Field.mergeSha, patchset.tip);
    merge.setField(Field.mergeTo, "master");
    merge.setField(Field.status, Status.Merged);

    ticket = service.updateTicket(getRepository(), ticket.number, merge);
    ticket.repository = getRepository().name;

    TicketNotifier notifier = service.createNotifier();
View Full Code Here

      @Override
      public void onSubmit(AjaxRequestTarget target, Form<?> form) {
        String txt = markdownEditor.getText();
        if (change == null) {
          // new comment
          Change newComment = new Change(user.username);
          newComment.comment(txt);
          if (!ticket.isWatching(user.username)) {
            newComment.watch(user.username);
          }
          RepositoryModel repository = app().repositories().getRepositoryModel(ticket.repository);
          TicketModel updatedTicket = app().tickets().updateTicket(repository, ticket.number, newComment);
          if (updatedTicket != null) {
            app().tickets().createNotifier().sendMailing(updatedTicket);
View Full Code Here

TOP

Related Classes of com.gitblit.models.TicketModel.Change

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.