Как мне проверить gwtp addToPopupSlot?
У меня есть gwtp докладчик, в некоторых случаях он должен добавить к popupslot другого докладчика.
Как я могу проверить этот факт в тесте?
Я использую Jukito для тестов.
Код докладчика:
...
@Override
public void onAddPersonClick() {
editPersonPresenter.initForCreating();
addToPopupSlot(editPersonPresenter);
}
...
Тестовое задание:
@RunWith(JukitoRunner.class)
public class PersonsPagePresenterTest {
@Inject
PersonPagePresenter personPagePresenter;
@Test
public void testAddPersonClick() {
personPagePresenter.onAddPersonClick();
//how to verify addToPopupSlot(editPersonPresenter);?
}
}
Проблема в том, что все внедренные докладчики в тесте не являются фиктивными (только их взгляды являются фиктивными)
1 ответ
Решение
Вам нужно будет шпионить за экземпляром, используя mockito, так как вы хотите убедиться, что вызывается метод экземпляра. Обратите внимание, что я удалил @Inject
в поле PersonPagePresenter, поскольку оно вводится с помощью метода setUp
@RunWith(JukitoRunner.class)
public class PersonsPagePresenterTest {
PersonPagePresenter personPagePresenter;
@Before
public void setUp(PersonPagePresenter personPagePresenter) {
this.personPagePresenter = Mockito.spy(personPagePresenter);
}
@Test
public void testAddPersonClick() {
personPagePresenter.onAddPersonClick();
Mockito.verify(personPagePresenter).addToPopupSlot(editPersonPresenter);
}
}