/** Test of BuildMessageFromMpiPatient method, of class HL7Parser201306. */ @Test public void testBuildMessageFromMpiPatient() { System.out.println("BuildMessageFromMpiPatient"); II subjectId = new II(); subjectId.setRoot("2.16.840.1.113883.3.200"); subjectId.setExtension("1234"); String firstExpectedName = "Joe"; String lastExpectedName = "Smith"; String middleExpectedName = "Middle"; String expectedTitle = "Title"; String expectedSuffix = "Suffix"; PRPAIN201305UV02 query = TestHelper.build201305( firstExpectedName, lastExpectedName, "M", "March 1, 1956", subjectId); Identifier patId = new Identifier(); patId.setId("1234"); patId.setOrganizationId("2.16.840.1.113883.3.200"); Patient patient = TestHelper.createMpiPatient( firstExpectedName, lastExpectedName, middleExpectedName, "M", "March 1, 1956", patId); patient.getName().setSuffix(expectedSuffix); patient.getName().setTitle(expectedTitle); PRPAIN201306UV02 result = HL7Parser201306.BuildMessageFromMpiPatient(patient, query); // TODO review the generated test code and remove the default call to fail. PNExplicit pnResult = result .getControlActProcess() .getSubject() .get(0) .getRegistrationEvent() .getSubject1() .getPatient() .getPatientPerson() .getValue() .getName() .get(0); PatientName patientName = extractName(pnResult); assertEquals(lastExpectedName, patientName.LastName); assertEquals(firstExpectedName, patientName.FirstName); assertEquals(middleExpectedName, patientName.MiddleName); assertEquals(expectedTitle, patientName.Title); assertEquals(expectedSuffix, patientName.Suffix); }
@Test public void testBuildMessageFromMpiPatient_MultiPhoneNumber() { System.out.println("testBuildMessageFromMpiPatient_MultiPhoneNumber"); II subjectId = new II(); subjectId.setRoot("2.16.840.1.113883.3.200"); subjectId.setExtension("1234"); String firstExpectedName = "Joe"; String lastExpectedName = "Smith"; String middleExpectedName = "Middle"; String expectedTitle = "Title"; String expectedSuffix = "Suffix"; PRPAIN201305UV02 query = TestHelper.build201305( firstExpectedName, lastExpectedName, "M", "March 1, 1956", subjectId); Identifier patId = new Identifier(); patId.setId("1234"); patId.setOrganizationId("2.16.840.1.113883.3.200"); Patient patient = TestHelper.createMpiPatient( firstExpectedName, lastExpectedName, middleExpectedName, "M", "March 1, 1956", patId); patient.getName().setSuffix(expectedSuffix); patient.getName().setTitle(expectedTitle); patient.getPhoneNumbers().add(new PhoneNumber("7031231234")); patient.getPhoneNumbers().add(new PhoneNumber("2021231234")); PRPAIN201306UV02 result = HL7Parser201306.BuildMessageFromMpiPatient(patient, query); // TODO review the generated test code and remove the default call to fail. PRPAMT201310UV02Person person = result .getControlActProcess() .getSubject() .get(0) .getRegistrationEvent() .getSubject1() .getPatient() .getPatientPerson() .getValue(); assertEquals(2, person.getTelecom().size()); assertEquals("7031231234", person.getTelecom().get(0).getValue()); assertEquals("2021231234", person.getTelecom().get(1).getValue()); }
private boolean equals(Identifier a, Identifier b) { if ((NullChecker.isNullish(a.getId())) || (a.getOrganizationId() == null) || (NullChecker.isNullish(b.getId())) || (b.getOrganizationId() == null)) { return false; } return a.getId().contentEquals(b.getId()) && a.getOrganizationId().contentEquals(b.getOrganizationId()); }
public void Delete(Patient patient, String homeCommunityId) { log.info( "Attemping to Delete identifiers for community: " + homeCommunityId + " for patient: " + patient.getName().getFirstName() + " " + patient.getName().getLastName()); Patients existingPatients = Search(patient, true, true); int patIdx = 0; int idIdx = 0; if (existingPatients.size() > 1) { log.info("ERROR: Multiple instances of the patient were found"); } else if (existingPatients.size() == 1) { log.info("Found 1 entry in MPI for the patient"); for (Patient tmpPatient : getPatients()) { if (existingPatients.get(0) == tmpPatient) { log.info("Found a match in index " + patIdx); for (Identifier id : getPatients().get(patIdx).getIdentifiers()) { if (homeCommunityId.contentEquals(id.getOrganizationId())) { log.info("Found a match for identifiers in index" + idIdx); Identifier result = getPatients().get(patIdx).getIdentifiers().remove(idIdx); break; } idIdx++; } break; } patIdx++; } } else { // System.out.println("ERROR: Patient not found in MPI"); log.info("ERROR: Patient not found in MPI"); } SaveData(); }
@Test public void testBuildMessageFromMpiPatient_MultiAddress() { System.out.println("testBuildMessageFromMpiPatient_MultiAddress"); II subjectId = new II(); subjectId.setRoot("2.16.840.1.113883.3.200"); subjectId.setExtension("1234"); String firstExpectedName = "Joe"; String lastExpectedName = "Smith"; String middleExpectedName = "Middle"; String expectedTitle = "Title"; String expectedSuffix = "Suffix"; PRPAIN201305UV02 query = TestHelper.build201305( firstExpectedName, lastExpectedName, "M", "March 1, 1956", subjectId); Identifier patId = new Identifier(); patId.setId("1234"); patId.setOrganizationId("2.16.840.1.113883.3.200"); Patient patient = TestHelper.createMpiPatient( firstExpectedName, lastExpectedName, middleExpectedName, "M", "March 1, 1956", patId); patient.getName().setSuffix(expectedSuffix); patient.getName().setTitle(expectedTitle); Address add = new Address(); add.setCity("Chantilly"); add.setState("VA"); add.setStreet1("5155 Parkstone Drive"); add.setStreet2("Att:Developer"); add.setZip("20151"); Address add2 = new Address(); add2.setCity("Melbourne"); add2.setState("FL"); add2.setStreet1("1025 West NASA Boulevard"); add2.setStreet2("Att:Developer"); add2.setZip("32919-0001"); patient.getAddresses().add(add); patient.getAddresses().add(add2); PRPAIN201306UV02 result = HL7Parser201306.BuildMessageFromMpiPatient(patient, query); // TODO review the generated test code and remove the default call to fail. PRPAMT201310UV02Person person = result .getControlActProcess() .getSubject() .get(0) .getRegistrationEvent() .getSubject1() .getPatient() .getPatientPerson() .getValue(); assertEquals(2, person.getAddr().size()); assertEquals(5, person.getAddr().get(0).getContent().size()); assertEquals(5, person.getAddr().get(1).getContent().size()); // assertEquals("5155 Parkstone Drive", person.getAddr().get(0).getUse().get(0)); // assertEquals("1025 West NASA Boulevard", person.getAddr().get(1).getUse().get(0)); }