Oi pessoal, estive fazendo testes nos controllers usando a classe MockResult, o método from(…) retorna null pointer usando o RepresentationResult.
Alguém tem alguma ideia ??
O teste:
@Before
public void setUp() {
collabletInstance = mock(CollabletInstance.class);
tagMgrInstance = mock(TagMgrInstance.class);
result = new MockResult();
controller = new TagMgrController(result);
}
@Test
public void shouldAddCollabletInstanceToResultForMethodList() {
when(tagMgrInstance.listAll()).thenReturn(fakeTwoTagsList());
controller.list(collabletInstance, tagMgrInstance);
assertEquals(collabletInstance, result.included("collabletInstance"));
}
private List<Tag> fakeTwoTagsList() {
Tag tag1 = new Tag();
tag1.setId(1L);
tag1.setName("manager");
Tag tag2 = new Tag();
tag2.setId(2L);
tag2.setName("desenvolvedor");
List<Tag> tagsList = new ArrayList<Tag>();
tagsList.add(tag1);
tagsList.add(tag2);
return tagsList;
}
O método:
@Get
@Path(value="/groupware-workbench/{collablet}/tagMgr/{tagMgr}")
public void list(final CollabletInstance collablet, final TagMgrInstance tagMgr) {
result.include("collabletInstance", collablet);
result.include("tagList", tagMgr.listAll());
result.use(Results.representation()).from(tagMgr.listAll()).serialize();
}