Как проверить цепочку вызовов методов? - PullRequest
0 голосов
/ 20 июня 2019

Я пишу тесты для класса DAO моего проекта.Но когда я использую метод verify() Mockito, он выдает NullPointerException, потому что метод createQuery() возвращает null.Как я могу это исправить?

@Mock(answer = Answers.RETURNS_DEEP_STUBS)
private EntityManager entityManagerMock;

@InjectMocks
private TaksitPlanSatiriDao taksitPlanSatiriDao = new TaksitPlanSatiriDaoJpa();

@Before
public void setUp() {
    taksitPlanSatiriEntity = new TaksitPlanSatiriEntity();
}
@Test
public void shouldUpdateWhenGuncelleCalledWithTaksitPlanSatiriEntity() {
    taksitPlanSatiriDao.guncelle(taksitPlanSatiriEntity);
    Mockito.verify(entityManagerMock).createQuery(ArgumentMatchers.anyString()).executeUpdate();
}

1 Ответ

0 голосов
/ 20 июня 2019

Попробуйте:

Mockito.verify(entityManagerMock.createQuery(ArgumentMatchers.anyString())).executeUpdate();

Это основано на документации "Deep Stubs":

https://static.javadoc.io/org.mockito/mockito-core/2.28.2/org/mockito/Mockito.html#RETURNS_DEEP_STUBS

...