### Question:
DMNClientProjectDiagramService extends ClientProjectDiagramService { @Override public void getByPath(final Path path, final ServiceCallback<ProjectDiagram> callback) { final String defSetId = BindableAdapterUtils.getDefinitionSetId(DMNDefinitionSet.class); dmnContentServiceCaller.call(onProjectContent(callback)).getProjectContent(path, defSetId); } @Inject  DMNClientProjectDiagramService(final ShapeManager shapeManager,
                                          final SessionManager sessionManager,
                                          final Caller<ProjectDiagramService> diagramServiceCaller,
                                          final Caller<DiagramLookupService> diagramLookupServiceCaller,
                                          final Event<SessionDiagramSavedEvent> saveEvent,
                                          final Caller<DMNContentService> dmnContentServiceCaller,
                                          final DMNMarshallerService dmnMarshallerService); @Override void getByPath(final Path path,
                          final ServiceCallback<ProjectDiagram> callback); @Override void saveOrUpdate(final Path path,
                             final ProjectDiagram diagram,
                             final Metadata metadata,
                             final String comment,
                             final ServiceCallback<ProjectDiagram> callback);  }### Answer:
@Test public void testGetByPath() { final String defSetId = BindableAdapterUtils.getDefinitionSetId(DMNDefinitionSet.class); when(dmnContentServiceCaller.call(resourceRemoteCallback)).thenReturn(dmnContentService); doReturn(resourceRemoteCallback).when(service).onProjectContent(projectDiagramCallback); service.getByPath(path, projectDiagramCallback); verify(dmnContentService).getProjectContent(path, defSetId); }