| getPersonAttributeTypes(OpenmrsConstants.PERSON_TYPE, PersonService.ATTR_VIEW_TYPE) |  | 0% |  | 0% | 24 | 24 | 50 | 50 | 1 | 1 |
| parsePersonName(String) |  | 0% |  | 0% | 8 | 8 | 36 | 36 | 1 | 1 |
| savePersonAttributeType(PersonAttributeType) |  | 0% |  | 0% | 10 | 10 | 20 | 20 | 1 | 1 |
| getPersonAttributeTypes(String, String) |  | 0% |  | 0% | 9 | 9 | 19 | 19 | 1 | 1 |
| getRelationshipMap(RelationshipType) |  | 0% |  | 0% | 4 | 4 | 12 | 12 | 1 | 1 |
| savePersonMergeLog(PersonMergeLog) |  | 0% |  | 0% | 2 | 2 | 10 | 10 | 1 | 1 |
| findPeople(String, boolean, String) |  | 0% |  | 0% | 5 | 5 | 9 | 9 | 1 | 1 |
| findPeople(String, boolean, List) |  | 0% |  | 0% | 3 | 3 | 7 | 7 | 1 | 1 |
| retirePersonAttributeType(PersonAttributeType, String) |  | 0% |  | 0% | 3 | 3 | 7 | 7 | 1 | 1 |
| retireRelationshipType(RelationshipType, String) |  | 0% |  | 0% | 3 | 3 | 7 | 7 | 1 | 1 |
| saveRelationshipType(RelationshipType) |  | 0% |  | 0% | 2 | 2 | 4 | 4 | 1 | 1 |
| voidRelationship(Relationship, String) |   | 20% |   | 17% | 3 | 4 | 7 | 9 | 0 | 1 |
| findPeople(String, boolean) |  | 0% |  | 0% | 2 | 2 | 5 | 5 | 1 | 1 |
| unretirePersonAttributeType(PersonAttributeType) |  | 0% | | n/a | 1 | 1 | 6 | 6 | 1 | 1 |
| getPersonMergeLogByUuid(String, boolean) |  | 0% |  | 0% | 3 | 3 | 6 | 6 | 1 | 1 |
| getPersonAttributeTypeByName(String) |  | 0% |  | 0% | 2 | 2 | 4 | 4 | 1 | 1 |
| getRelationshipsByPerson(Person, Date) |  | 0% | | n/a | 1 | 1 | 3 | 3 | 1 | 1 |
| getRelationshipTypeByName(String) |  | 0% |  | 0% | 2 | 2 | 4 | 4 | 1 | 1 |
| unvoidRelationship(Relationship) |  | 0% | | n/a | 1 | 1 | 5 | 5 | 1 | 1 |
| unretireRelationshipType(RelationshipType) |  | 0% | | n/a | 1 | 1 | 5 | 5 | 1 | 1 |
| deserializeList(List) |  | 0% |  | 0% | 2 | 2 | 3 | 3 | 1 | 1 |
| deserialize(PersonMergeLog) |  | 0% | | n/a | 1 | 1 | 4 | 4 | 1 | 1 |
| getWinningPersonMergeLogs(Person, boolean) |  | 0% |  | 0% | 2 | 2 | 4 | 4 | 1 | 1 |
| getLosingPersonMergeLog(Person, boolean) |  | 0% |  | 0% | 2 | 2 | 4 | 4 | 1 | 1 |
| getRelationships(Person, boolean) |  | 0% |  | 0% | 2 | 2 | 4 | 4 | 1 | 1 |
| getAllPersonMergeLogs(boolean) |  | 0% |  | 0% | 2 | 2 | 4 | 4 | 1 | 1 |
| voidPerson(Person, String) |  | 0% |  | 0% | 2 | 2 | 3 | 3 | 1 | 1 |
| unvoidPerson(Person) |  | 0% |  | 0% | 2 | 2 | 3 | 3 | 1 | 1 |
| getPerson(Patient) |  | 0% |  | 0% | 2 | 2 | 3 | 3 | 1 | 1 |
| getPerson(User) |  | 0% |  | 0% | 2 | 2 | 3 | 3 | 1 | 1 |
| getRelationships(Person, Person, RelationshipType, Date) |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| getRelationships(Person, Person, RelationshipType, Date, Date) |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| getRelationshipTypes(String, Boolean) |  | 0% | | n/a | 1 | 1 | 2 | 2 | 1 | 1 |
| getPersonAttributeTypes(String, String, Integer, Boolean) |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| savePersonName(PersonName) |  | 0% | | n/a | 1 | 1 | 2 | 2 | 1 | 1 |
| getSimilarPeople(String, Integer, String) |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| getSimilarPeople(String, Integer, String, String) |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| getPeople(String, Boolean) |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| deletePersonAttributeType(Integer) |  | 0% | | n/a | 1 | 1 | 2 | 2 | 1 | 1 |
| getRelationshipsTo(Person, RelationshipType) |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| saveRelationship(Relationship) |   | 69% |   | 50% | 1 | 2 | 1 | 3 | 0 | 1 |
| getAllPersonAttributeTypes(boolean) |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| purgePersonAttributeType(PersonAttributeType) |  | 0% | | n/a | 1 | 1 | 2 | 2 | 1 | 1 |
| createPersonAttributeType(PersonAttributeType) |  | 0% | | n/a | 1 | 1 | 2 | 2 | 1 | 1 |
| updatePersonAttributeType(PersonAttributeType) |  | 0% | | n/a | 1 | 1 | 2 | 2 | 1 | 1 |
| deletePersonAttributeType(PersonAttributeType) |  | 0% | | n/a | 1 | 1 | 2 | 2 | 1 | 1 |
| getPersonAttribute(Integer) |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| getRelationship(Integer) |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| getRelationshipType(Integer) |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| purgePerson(Person) |  | 0% | | n/a | 1 | 1 | 2 | 2 | 1 | 1 |
| savePerson(Person) |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| updatePerson(Person) |  | 0% | | n/a | 1 | 1 | 2 | 2 | 1 | 1 |
| getAllRelationships(boolean) |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| purgeRelationship(Relationship) |  | 0% | | n/a | 1 | 1 | 2 | 2 | 1 | 1 |
| createRelationship(Relationship) |  | 0% | | n/a | 1 | 1 | 2 | 2 | 1 | 1 |
| updateRelationship(Relationship) |  | 0% | | n/a | 1 | 1 | 2 | 2 | 1 | 1 |
| createRelationshipType(RelationshipType) |  | 0% | | n/a | 1 | 1 | 2 | 2 | 1 | 1 |
| updateRelationshipType(RelationshipType) |  | 0% | | n/a | 1 | 1 | 2 | 2 | 1 | 1 |
| getRelationshipTypes(String) |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| purgeRelationshipType(RelationshipType) |  | 0% | | n/a | 1 | 1 | 2 | 2 | 1 | 1 |
| getPersonAttributeTypeByUuid(String) |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| getPersonByUuid(String) |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| getPersonAddressByUuid(String) |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| getPersonAttributeByUuid(String) |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| getPersonName(Integer) |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| getPersonNameByUuid(String) |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| getRelationshipByUuid(String) |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| getRelationshipTypeByUuid(String) |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| getAllRelationshipTypes(boolean) |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| savePersonAddress(PersonAddress) |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| getAllPersonAttributeTypes() |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| getPersonAttributeType(String) |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| getRelationships(Person) |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| findRelationshipType(String) |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| createPerson(Person) |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| deletePerson(Person) |  | 0% | | n/a | 1 | 1 | 2 | 2 | 1 | 1 |
| getAllRelationships() |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| deleteRelationship(Relationship) |  | 0% | | n/a | 1 | 1 | 2 | 2 | 1 | 1 |
| deleteRelationshipType(RelationshipType) |  | 0% | | n/a | 1 | 1 | 2 | 2 | 1 | 1 |
| getAllRelationshipTypes() |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| splitPersonName(String) |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| voidPersonName(PersonName, String) |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| unvoidPersonName(PersonName) |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| getRelationships(RelationshipType) |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| voidPersonAddress(PersonAddress, String) |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| unvoidPersonAddress(PersonAddress) |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| getPersonAttributeTypes() |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| getRelationships() |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| getRelationshipTypes() |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| getPerson(Integer) |   | 78% |   | 50% | 1 | 2 | 1 | 3 | 0 | 1 |
| getRelationshipsByPerson(Person) |  | 100% | | n/a | 0 | 1 | 0 | 3 | 0 | 1 |
| PersonServiceImpl() |  | 100% | | n/a | 0 | 1 | 0 | 2 | 0 | 1 |
| getRelationships(Person, Person, RelationshipType) |  | 100% | | n/a | 0 | 1 | 0 | 1 | 0 | 1 |
| getPersonAttributeType(Integer) |  | 100% | | n/a | 0 | 1 | 0 | 1 | 0 | 1 |
| setPersonDAO(PersonDAO) |  | 100% | | n/a | 0 | 1 | 0 | 2 | 0 | 1 |