@Test public void testOnTransUnitUpdatedNotInCurrentDocument() throws Exception { // Given: updated trans unit is from another document service.init(initContext); HasTransUnitUpdatedData updatedData = mock(HasTransUnitUpdatedData.class, withSettings().defaultAnswer(RETURNS_DEEP_STUBS)); when(updatedData.getUpdateInfo().getDocumentId()).thenReturn(initContext.getDocumentId()); // When: service.onTransUnitUpdated(new TransUnitUpdatedEvent(updatedData)); // Then: verifyZeroInteractions(pageDataChangeListener); }
@Test public void testOnTransUnitUpdatedInCurrentPage() throws Exception { // Given: updated trans unit is from same document and it's on current page service.init(initContext); HasTransUnitUpdatedData updatedData = mock(HasTransUnitUpdatedData.class, withSettings().defaultAnswer(RETURNS_DEEP_STUBS)); when(updatedData.getUpdateInfo().getDocumentId()).thenReturn(initContext.getDocumentId()); TransUnit updatedTU = data.get(0); when(updatedData.getUpdateInfo().getTransUnit()).thenReturn(updatedTU); EditorClientId editorClientId = new EditorClientId("sessionId", 1); when(updatedData.getEditorClientId()).thenReturn(editorClientId); when(updatedData.getUpdateType()).thenReturn(TransUnitUpdated.UpdateType.WebEditorSave); // When: service.onTransUnitUpdated(new TransUnitUpdatedEvent(updatedData)); // Then: verify(pageDataChangeListener) .refreshRow(updatedTU, editorClientId, TransUnitUpdated.UpdateType.WebEditorSave); }
@Test public void testOnTransUnitUpdatedNotInCurrentPage() throws Exception { // Given: updated trans unit is from same document but NOT on current page service.init(initContext); HasTransUnitUpdatedData updatedData = mock(HasTransUnitUpdatedData.class, withSettings().defaultAnswer(RETURNS_DEEP_STUBS)); when(updatedData.getUpdateInfo().getDocumentId()).thenReturn(initContext.getDocumentId()); // updated TU has something different so that we can assert it won't update current page data // model TransUnit updatedTU = TransUnit.Builder.from(data.get(data.size() - 1)).setSourceComment("different").build(); when(updatedData.getUpdateInfo().getTransUnit()).thenReturn(updatedTU); // When: service.onTransUnitUpdated(new TransUnitUpdatedEvent(updatedData)); // Then: verifyZeroInteractions(pageDataChangeListener); assertThat( data.get(data.size() - 1).getSourceComment(), Matchers.not(Matchers.equalTo(updatedTU.getSourceComment()))); }