@Test public void testPopupCancelsClose() throws Exception { final PlaceRequest popupPlace = new DefaultPlaceRequest("Somewhere"); final AbstractPopupActivity popupActivity = mock(AbstractPopupActivity.class); when(popupActivity.onMayClose()).thenReturn(false); when(popupActivity.isType(ActivityResourceType.POPUP.name())).thenReturn(true); when(activityManager.getActivities(popupPlace)).thenReturn(singleton((Activity) popupActivity)); placeManager.goTo(popupPlace); placeManager.closePlace(popupPlace); verify(popupActivity, never()).onClose(); assertEquals(PlaceStatus.OPEN, placeManager.getStatus(popupPlace)); }
@Test public void testPopupCancelsClose() throws Exception { final PlaceRequest popupPlace = new DefaultPlaceRequest("Somewhere"); final AbstractPopupActivity popupActivity = mock(AbstractPopupActivity.class); when(popupActivity.onMayClose()).thenReturn(false); when(popupActivity.isType(ActivityResourceType.POPUP.name())).thenReturn(true); when(activityManager.getActivities(popupPlace)).thenReturn(singleton((Activity) popupActivity)); placeManager.goTo(popupPlace); placeManager.closePlace(popupPlace); verify(popupActivity, never()).onClose(); assertEquals(PlaceStatus.OPEN, placeManager.getStatus(popupPlace)); }
@Test public void testReLaunchingClosedPopup() throws Exception { final PlaceRequest popupPlace = new DefaultPlaceRequest("Somewhere"); final AbstractPopupActivity popupActivity = mock(AbstractPopupActivity.class); when(popupActivity.onMayClose()).thenReturn(true); when(popupActivity.isType(ActivityResourceType.POPUP.name())).thenReturn(true); when(activityManager.getActivities(popupPlace)).thenReturn(singleton((Activity) popupActivity)); placeManager.goTo(popupPlace); placeManager.closePlace(popupPlace); placeManager.goTo(popupPlace); verify(popupActivity, times(2)).onOpen(); verify(popupActivity, times(1)).onClose(); assertEquals(PlaceStatus.OPEN, placeManager.getStatus(popupPlace)); }
@Test public void testReLaunchingClosedPopup() throws Exception { final PlaceRequest popupPlace = new DefaultPlaceRequest("Somewhere"); final AbstractPopupActivity popupActivity = mock(AbstractPopupActivity.class); when(popupActivity.onMayClose()).thenReturn(true); when(popupActivity.isType(ActivityResourceType.POPUP.name())).thenReturn(true); when(activityManager.getActivities(popupPlace)).thenReturn(singleton((Activity) popupActivity)); placeManager.goTo(popupPlace); placeManager.closePlace(popupPlace); placeManager.goTo(popupPlace); verify(popupActivity, times(2)).onOpen(); verify(popupActivity, times(1)).onClose(); assertEquals(PlaceStatus.OPEN, placeManager.getStatus(popupPlace)); }