### Question:
ResolveTransplantRequestAction extends ClientAction { @Override protected void execute() { super.execute(); request.setStatus(status); request.setResolvedDateTime(resolvedTime); request.setResolvedReason(reason); manager.applyChangesTo(request.getClient()); } ResolveTransplantRequestAction(TransplantRequest request,
            TransplantRequestStatus status,
            String reason,
            LocalDateTime resolvedTime,
            ClientManager manager); @Override String getExecuteText(); @Override String getUnexecuteText();  }### Answer:
@Test public void cancelTest() { Action action = new ResolveTransplantRequestAction( testRequest, TransplantRequestStatus.CANCELLED, "Cancelled.", LocalDateTime.now(), manager); invoker.execute(action); assertEquals(TransplantRequestStatus.CANCELLED, testRequest.getStatus()); }
@Test public void completeTest() { Action action = new ResolveTransplantRequestAction( testRequest, TransplantRequestStatus.COMPLETED, "Completed.", LocalDateTime.now(), manager); invoker.execute(action); assertEquals(TransplantRequestStatus.COMPLETED, testRequest.getStatus()); }
@Test public void correctResolvedDateTest() { Action action = new ResolveTransplantRequestAction( testRequest, TransplantRequestStatus.CANCELLED, "Cancelled.", LocalDateTime.now(), manager); invoker.execute(action); Duration timeDiff = Duration.between(LocalDateTime.now(), testRequest.getResolvedDateTime()); assertTrue(Math.abs(timeDiff.getSeconds()) < 3); }