@Test public void willSaveAndMoveToNextRow() { // Given: selected display and there is only one entry(no plural or last entry of plural) selectedTU = currentPageRows.get(0); when(display.getNewTargets()).thenReturn(NEW_TARGETS); when(display.getCachedTargets()).thenReturn(CACHED_TARGETS); when(display.getId()).thenReturn(selectedTU.getId()); when(display.getEditors()).thenReturn(Lists.newArrayList(editor)); presenter.setStatesForTesting(selectedTU.getId(), 0, display); // When: presenter.saveAsApprovedAndMoveNext(selectedTU.getId()); // Then: verify(eventBus, atLeastOnce()).fireEvent(eventCaptor.capture()); TransUnitSaveEvent saveEvent = TestFixture.extractFromEvents(eventCaptor.getAllValues(), TransUnitSaveEvent.class); assertThat(saveEvent.getTransUnitId(), equalTo(selectedTU.getId())); assertThat(saveEvent.getTargets(), Matchers.equalTo(NEW_TARGETS)); assertThat(saveEvent.getStatus(), equalTo(ContentState.Translated)); NavTransUnitEvent navEvent = TestFixture.extractFromEvents(eventCaptor.getAllValues(), NavTransUnitEvent.class); assertThat(navEvent.getRowType(), equalTo(NavTransUnitEvent.NavigationType.NextEntry)); }
@BeforeMethod public void beforeMethod() { MockitoAnnotations.initMocks(this); initData(); UserConfigHolder configHolder = new UserConfigHolder(); configHolder.setEditorPageSize(EDITOR_PAGE_SIZE); SinglePageDataModelImpl pageModel = new SinglePageDataModelImpl(); ModalNavigationStateHolder navigationStateHolder = new ModalNavigationStateHolder(configHolder); service = new NavigationService( eventBus, dispatcher, configHolder, mock(TableEditorMessages.class), pageModel, navigationStateHolder); service.addPageDataChangeListener(pageDataChangeListener); verify(eventBus).addHandler(DocumentSelectionEvent.getType(), service); verify(eventBus).addHandler(TransUnitUpdatedEvent.getType(), service); verify(eventBus).addHandler(FindMessageEvent.getType(), service); verify(eventBus).addHandler(NavTransUnitEvent.getType(), service); verify(eventBus).addHandler(EditorPageSizeChangeEvent.TYPE, service); pageModel.setData(data.subList(0, configHolder.getState().getEditorPageSize())); navigationStateHolder.init(idStateMap, idIndexList); initContext = new GetTransUnitActionContext(new DocumentId(1, "")) .changeCount(configHolder.getState().getEditorPageSize()); }