@Test public void shouldAddNewDrugOrderWhenPrnIsTrueWIthNoDosageFrequencyOrDosageInstruction() { EncounterTransaction.DrugOrder drugOrder = new DrugOrderBuilder() .withBasicValues("drug-uuid", "test-concept-uuid", today, today, 3, "", "") .withPrn(true) .build(); Concept drugConcept = new Concept(3); OrderType drugOrderType = new OrderType("Drug Order", "this is a drug order type"); when(orderService.getAllOrderTypes()).thenReturn(asList(drugOrderType)); when(conceptService.getConceptByUuid("test-concept-uuid")).thenReturn(drugConcept); Drug drug = new Drug(); drug.setName("test drug"); when(conceptService.getDrugByUuid("drug-uuid")).thenReturn(drug); encounterDrugOrderServiceHelper.update(encounter, asList(drugOrder)); assertThat(encounter.getOrders().size(), is(1)); org.openmrs.DrugOrder order = (org.openmrs.DrugOrder) encounter.getOrders().iterator().next(); assertEquals(drugConcept, order.getConcept()); assertEquals(drugOrderType, order.getOrderType()); assertEquals(patient, order.getPatient()); assertEquals(encounter, order.getEncounter()); assertEquals(today, order.getStartDate()); assertEquals(today, order.getAutoExpireDate()); assertEquals(drug.getDisplayName(), order.getDrug().getDisplayName()); assertEquals(Double.valueOf(3), order.getDose()); assertEquals(true, order.getPrn()); assertEquals(null, order.getFrequency()); assertEquals(null, order.getUnits()); }
@Test(expected = InvalidDrugException.class) public void shouldThrowExceptionIfDrugDoesNotContainValidDosageFrequencyWhenPRNIsFalse() { EncounterTransaction.DrugOrder drugOrder1 = new DrugOrderBuilder() .withPrn(false) .withDosageFrequency("im not a valid frequency") .build(); EncounterTransaction.DrugOrder drugOrder2 = new DrugOrderBuilder().withPrn(false).withDosageFrequency("").build(); encounterDrugOrderServiceHelper.update(encounter, asList(drugOrder1, drugOrder2)); }
@Test(expected = InvalidDrugException.class) public void shouldThrowExceptionIfDrugDoesNotContainUUid() { EncounterTransaction.DrugOrder drugOrder = new DrugOrderBuilder().build(); encounterDrugOrderServiceHelper.update(encounter, asList(drugOrder)); }