### Question:
Clinician implements ConcurrencyControlledEntity { public String getFullName() { String fullName = firstName + " "; if (middleName != null) { fullName += middleName + " "; } fullName += lastName; return fullName; } protected  Clinician();  Clinician(
            String firstName,
            String middleName,
            String lastName,
            String workAddress,
            String region,
            Country country,
            int staffId,
            String password); boolean isPasswordValid(String password); LocalDateTime getCreatedOn(); String getFirstName(); void setFirstName(String firstName); String getLastName(); void setLastName(String lastName); String getMiddleName(); void setMiddleName(String middleName); String getWorkAddress(); void setWorkAddress(String workAddress); String getRegion(); void setRegion(String region); int getStaffId(); String getPassword(); void setPassword(String password); LocalDateTime getModifiedOn(); String getFullName(); List<HistoryItem> getChangesHistory(); void addToChangesHistory(HistoryItem historyItem); void removeFromChangesHistory(HistoryItem historyItem); @Override boolean equals(Object obj); @Override int hashCode(); @Override String getETag(); Country getCountry(); void setCountry(Country country);  }### Answer:
@Test void getFullNameNoMiddleNameTest() { Clinician clinician = new Clinician("First", null, "Last", "Address", "UNSPECIFIED", null, 1, "pass"); assertEquals("First Last", clinician.getFullName()); }
@Test void getFullNameWithMiddleNameTest() { Clinician clinician = new Clinician("First", "Mid Name", "Last", "Address", "UNSPECIFIED", null, 1, "pass"); assertEquals("First Mid Name Last", clinician.getFullName()); }