@Test public void onStop_shouldUnregisterEventBus() { presenter.onCreate(mockGraph, view); presenter.onStop(); verify(mockGraph.eventBus()).unregister(objectCaptor.capture()); assertThat(objectCaptor.getValue()).isEqualTo(presenter); }
@Test public void onStart_shouldRegisterEventBus() throws IOException { presenter.onCreate(mockGraph, view); presenter.onStart(); verify(mockGraph.eventBus()).register(objectCaptor.capture()); assertThat(objectCaptor.getValue()).isEqualTo(presenter); }
@Test public void onResumeOnPause_shouldReportPageViewTime() throws Exception { int expectPage = 0; long expectPageDuration = 1000; when(view.getCurrentPage()).thenReturn(expectPage); presenter.onCreate(mockGraph, view); presenter.onResume(); Thread.sleep(expectPageDuration); presenter.onPause(); verify(mockGraph.analytics()) .onMoviesListPageChanged( pageNameCaptor.capture(), durationCaptor.capture(), timeUnitCaptor.capture()); assertThat(pageNameCaptor.getValue()).isEqualTo(presenter.getPageType(expectPage).toString()); assertThat(durationCaptor.getValue()).isIn(Range.open(990L, 1010L)); assertThat(timeUnitCaptor.getValue()).isEqualTo(TimeUnit.MILLISECONDS); }