use of com.enonic.xp.issue.IssueCommentQuery in project xp by enonic.
the class IssueServiceImplTest_findComments method comments_find.
@Test
public void comments_find() throws Exception {
IssueCommentQuery query = IssueCommentQuery.create().issue(this.issue.getId()).build();
final FindIssueCommentsResult result = this.issueService.findComments(query);
assertNotNull(result);
assertEquals(3, result.getHits());
}
use of com.enonic.xp.issue.IssueCommentQuery in project xp by enonic.
the class FindIssueCommentsCommandTest method testFindIssuesNoIssue.
@Test
public void testFindIssuesNoIssue() throws Exception {
final PrincipalKey creator = PrincipalKey.from("user:store:one");
final IssueCommentQuery commentQuery = IssueCommentQuery.create().from(0).size(20).creator(creator).build();
final FindIssueCommentsCommand command = createCommand(commentQuery);
assertThrows(IllegalArgumentException.class, () -> command.execute());
}
use of com.enonic.xp.issue.IssueCommentQuery in project xp by enonic.
the class FindIssueCommentsCommandTest method testFindIssues.
@Test
public void testFindIssues() throws Exception {
final IssueId issueId = IssueId.create();
final Node issueNode = Node.create().id(NodeId.from(issueId)).name("parent-issue").build();
final PrincipalKey creator = PrincipalKey.from("user:store:one");
final IssueCommentQuery commentQuery = IssueCommentQuery.create().from(0).size(20).issue(issueId).creator(creator).build();
final FindIssueCommentsCommand command = createCommand(commentQuery);
Mockito.when(this.nodeService.getById(Mockito.any(NodeId.class))).thenReturn(issueNode);
Mockito.when(nodeService.findByQuery(Mockito.any(NodeQuery.class))).thenReturn(FindNodesByQueryResult.create().hits(20).totalHits(40).build());
Mockito.when(nodeService.getByIds(Mockito.any(NodeIds.class))).thenReturn(Nodes.from(IssueCommentNodeTranslatorTest.createNode(Instant.now())));
FindIssueCommentsResult result = command.execute();
Mockito.verify(nodeService, Mockito.times(1)).findByQuery(Mockito.any(NodeQuery.class));
Mockito.verify(nodeService, Mockito.times(1)).getByIds(Mockito.any(NodeIds.class));
assertEquals(20, result.getHits());
assertEquals(40, result.getTotalHits());
assertEquals(1, result.getIssueComments().size());
}
use of com.enonic.xp.issue.IssueCommentQuery in project xp by enonic.
the class FindIssueCommentsCommandTest method testFindIssuesIssueNotExists.
@Test
public void testFindIssuesIssueNotExists() throws Exception {
final IssueId issueId = IssueId.create();
final PrincipalKey creator = PrincipalKey.from("user:store:one");
final IssueCommentQuery commentQuery = IssueCommentQuery.create().from(0).size(20).issue(issueId).creator(creator).build();
final FindIssueCommentsCommand command = createCommand(commentQuery);
Mockito.when(this.nodeService.getById(Mockito.any(NodeId.class))).thenThrow(new NodeNotFoundException("Node not found"));
assertThrows(NodeNotFoundException.class, () -> command.execute());
}
use of com.enonic.xp.issue.IssueCommentQuery in project xp by enonic.
the class IssueServiceImplTest_findComments method comments_findByUser.
@Test
public void comments_findByUser() throws Exception {
IssueCommentQuery query = IssueCommentQuery.create().issue(this.issue.getId()).creator(User.ANONYMOUS.getKey()).build();
final FindIssueCommentsResult result = this.issueService.findComments(query);
assertNotNull(result);
assertEquals(2, result.getHits());
assertTrue(result.getIssueComments().stream().allMatch(c -> c.getCreator().equals(User.ANONYMOUS.getKey())));
}
Aggregations