### Question:
DeleteClinicianAction extends ClinicianAction { @Override protected void execute() { super.execute(); manager.removeClinician(clinician); } DeleteClinicianAction(Clinician clinician, ClinicianManager manager); @Override String getExecuteText(); @Override String getUnexecuteText();  }### Answer:
@Test public void CheckClinicianDeletedTest() { DeleteClinicianAction action = new DeleteClinicianAction(baseClinician, manager); invoker.execute(action); assertEquals(1, manager.getClinicians().size()); }
@Test public void CheckClinicianDeletedUndoTest() { DeleteClinicianAction action = new DeleteClinicianAction(baseClinician, manager); invoker.execute(action); invoker.undo(); assertEquals(2, manager.getClinicians().size()); }
@Test public void CheckClinicianMultipleDeletesOneUndoTest() { Clinician second = new Clinician("First2", null, "Last2", "Address", Region.UNSPECIFIED.name(), null, 2, "pass"); manager.addClinician(second); DeleteClinicianAction action = new DeleteClinicianAction(baseClinician, manager); DeleteClinicianAction secondAction = new DeleteClinicianAction(second, manager); invoker.execute(action); invoker.execute(secondAction); invoker.undo(); assertEquals(second, manager.getClinicians().get(1)); assertEquals(2, manager.getClinicians().size()); }
@Test public void CheckClinicianMultipleDeletesOneUndoRedoTest() { Clinician second = new Clinician("First2", null, "Last2", "Address", Region.UNSPECIFIED.name(), null, 2, "pass"); manager.addClinician(second); DeleteClinicianAction action = new DeleteClinicianAction(baseClinician, manager); DeleteClinicianAction secondAction = new DeleteClinicianAction(second, manager); invoker.execute(action); invoker.execute(secondAction); invoker.undo(); assertEquals(second, manager.getClinicians().get(1)); assertEquals(2, manager.getClinicians().size()); invoker.redo(); assertEquals(1, manager.getClinicians().size()); }