Slide 4
Slide 4 text
Bad vs Good tests
@Test
public void test1() {
mPresenter.attachView(null);
mPresenter.convertTemperature();
mPresenter.detachView();
verify(mView, never()).getInputValue();
verify(mView, never()).getFromTemperatureUnit();
verify(mView, never()).getToTemperatureUnit();
verify(mView, never()).setOutputValue(anyDouble());
when(mTemperatureFactory.getTemperatureConverter())
.thenReturn(mConverter);
doNothing().when(mConverter).convertData(any(InputData.class));
mPresenter.attachView(mView);
mPresenter.convertTemperature();
mPresenter.detachView();
verify(mEventBus).register(any());
verify(mView).displayProgress();
verify(mView, times(1)).getInputValue();
verify(mView, times(1)).getFromTemperatureUnit();
verify(mView, times(1)).getToTemperatureUnit();
verify(mEventBus).unregister(any());
}
@Test
public void shouldVerifyConvertDataSuccessful () {
mPresenter.attachView(mView);
mPresenter.convertTemperature();
mPresenter.detachView();
verify(mEventBus).register(any());
...
}
@Test
public void shouldVerifyConvertDataWithNullView() {
mPresenter.attachView(null);
mPresenter.convertTemperature();
mPresenter.detachView();
verify(mView, never()).getInputValue();
...
}
Don’t Do