Я пытаюсь проверить свой метод контроллера в Play Framework 2.4.6. Внутри мой метод контроллера, у меня есть следующий код:Использование Mockito 'when' в тестировании контроллера
User user = accountService.getUserByEmail(email);
if (user == null) {
//Path A
}
//Path B
При выполнении теста, user
будет нулевым. Поэтому я не могу проверить Path B
. Я попытался вернуть пользователя, используя Mockitowhen
, но он тоже не работал. Есть ли другой способ сделать это?
Ниже мой тестовый код:
RequestBuilder request = new RequestBuilder()
.method("POST")
.bodyForm(ImmutableMap.of("email", "[email protected]"))
.uri(controllers.routes.ResetPasswordController.postResetPassword().url());
when(accountService.getUserByEmail(anyString())).thenReturn(new User());
assertEquals(OK, route(request).status());
Ваш 'accountService' макет экземпляр должен быть известен рамках Play. E.e. быть зарегистрированным в качестве Службы Play. –
@AndriyKryvtsun Извините, не забудьте подробно остановиться на 'register as Play service'? Я не могу найти никаких значимых результатов, связанных с этим. – DxHito