@Test
public void checkOnSave() {

    final String commitMessage = "message";
    final ObservablePath path = mock(ObservablePath.class);
    final PlaceRequest placeRequest = mock(PlaceRequest.class);
    final GuidedDecisionTableEditorContent content = makeDecisionTableContent();
    final GuidedDecisionTableView.Presenter dtPresenter = makeDecisionTable(path,
                                                                            path,
                                                                            placeRequest,
                                                                            content);
    presenter.onSave(dtPresenter,
                     commitMessage);
    final ArgumentCaptor<GuidedDecisionTable52> modelCaptor = ArgumentCaptor.forClass(GuidedDecisionTable52.class);
    final ArgumentCaptor<Metadata> metadataCaptor = ArgumentCaptor.forClass(Metadata.class);
    verify(dtService,
           times(1)).saveAndUpdateGraphEntries(eq(path),
                                               modelCaptor.capture(),
                                               metadataCaptor.capture(),
                                               eq(commitMessage));
    assertNotNull(modelCaptor.getValue());
    assertEquals(dtPresenter.getModel(),
                 modelCaptor.getValue());
    assertNotNull(metadataCaptor.getValue());
    assertEquals(dtPresenter.getOverview().getMetadata(),
                 metadataCaptor.getValue());
}