Como escrever um teste de unidade para esta classe usando a estrutura de teste de Jersey 2
Estou tentando escrever um teste de unidade para uma chamada da API Rest, que está usando um método POST para adicionar um arquivo de vídeo a um aplicativo baseado na Web usando Jersey2. Aqui está a assinatura do método da minha classe (TemplateController.java
) para o qual quero escrever teste de unidade:
@POST
@Path("/video/add")
@Consumes(MediaType.APPLICATION_JSON)
@Produces(MediaType.APPLICATION_JSON)
public Response addVideoData(
@Context HttpServletRequest request,
AttachmentDTO attachmentDTO) {
...
}
Aqui está o meu método de teste da classe de teste (TemplateControllerUnitTestCase.java
):
@Test
public void videoAdd_requestObjectIsNull_ResponseStatusIsOK() throws Exception {
// arrange
Builder builder = target("/target/video/add").request();
// action
final Response response = builder.post(Entity.entity(attachemntDTO, MediaType.APPLICATION_JSON));
// assertion
...
}
Eu sou capaz de passar oAttachmentDAO
objeto para oTemplateController
classe da classe de teste, mas incapaz de passar o objeto de solicitação que está se tornando nulo nomethod(addVideoData())
doTemplateController.java class
.
estou a usarRequestHelper
classe que é uma classe auxiliar paraHttpServletRequest
, então eu quero passar um objeto dessa classe para omethod(addVideoData())
usando a estrutura de teste Jersey2.