/** * @see OrderService#getOrderTypeByUuid(String) */ @Test public void getOrderTypeByUuid_shouldReturnNullIfNoOrderTypeObjectFoundWithGivenUuid() { assertNull(orderService.getOrderTypeByUuid("some random uuid")); }
@Override protected Order getObjectByUuid(String uuid) { return Context.getOrderService().getOrderByUuid(uuid); } }
/** * @see OrderService#getCareSettingByUuid(String) */ @Test public void getCareSettingByUuid_shouldReturnTheCareSettingWithTheSpecifiedUuid() { CareSetting cs = orderService.getCareSettingByUuid("6f0c9a92-6f24-11e3-af88-005056821db0"); assertEquals(1, cs.getId().intValue()); }
@Test public void shouldGetTheActiveDrugOrdersForAPatient() { Patient patient = patientService.getPatient(2); List<Order> activeDrugOrders = orderService.getActiveOrders(patient, orderService.getOrderTypeByName("Drug order"), null, null); assertEquals(4, activeDrugOrders.size()); Order[] expectedDrugOrders = { orderService.getOrder(222), orderService.getOrder(3), orderService.getOrder(444), orderService.getOrder(5) }; assertThat(activeDrugOrders, hasItems(expectedDrugOrders)); }
@Test public void shouldGetTheActiveOrdersForAPatient() { Patient patient = patientService.getPatient(2); List<Order> activeOrders = orderService.getActiveOrders(patient, null, null, null); assertEquals(5, activeOrders.size()); Order[] expectedOrders = { orderService.getOrder(3), orderService.getOrder(5), orderService.getOrder(7), orderService.getOrder(222), orderService.getOrder(444) }; assertThat(activeOrders, hasItems(expectedOrders)); }
/** * @see OrderService#getActiveOrders(org.openmrs.Patient, org.openmrs.OrderType, * org.openmrs.CareSetting, java.util.Date) */ @Test public void getActiveOrders_shouldReturnAllActiveDrugOrdersForTheSpecifiedPatient() { Patient patient = patientService.getPatient(2); List<Order> orders = orderService.getActiveOrders(patient, orderService.getOrderType(1), null, null); assertEquals(4, orders.size()); Order[] expectedOrders = { orderService.getOrder(222), orderService.getOrder(3), orderService.getOrder(444), orderService.getOrder(5) }; assertThat(orders, hasItems(expectedOrders)); }
executeDataSet(ORDER_ENTRY_DATASET_XML); executeDataSet("OrderController1_10Test-conceptMappings.xml"); CareSetting outPatient = orderService.getCareSettingByUuid(RestTestConstants1_10.CARE_SETTING_UUID); Patient patient = patientService.getPatientByUuid(PATIENT_UUID); OrderType drugOrderType = orderService.getOrderTypeByName("Drug order"); if (drugOrderType.getConceptClasses().isEmpty()) { ConceptClass drugClass = Context.getConceptService().getConceptClassByName("Drug"); drugOrderType.getConceptClasses().add(drugClass); int originalActiveDrugOrderCount = orderService.getActiveOrders(patient, drugOrderType, outPatient, null).size(); SimpleObject order = new SimpleObject(); order.add("type", "drugorder"); SimpleObject newOrder = deserialize(handle(req)); List<Order> activeDrugOrders = orderService.getActiveOrders(patient, orderService.getOrderTypeByName("Drug order"), outPatient, null); assertEquals(++originalActiveDrugOrderCount, activeDrugOrders.size());
ConversionUtil.convertToRepresentation(orderService.getDrugRoutes(), context.getRepresentation())); ConversionUtil.convertToRepresentation(orderService.getDrugDosingUnits(), context.getRepresentation())); ConversionUtil.convertToRepresentation(orderService.getDrugDispensingUnits(), context.getRepresentation())); ConversionUtil.convertToRepresentation(orderService.getDurationUnits(), context.getRepresentation())); ConversionUtil.convertToRepresentation(orderService.getTestSpecimenSources(), context.getRepresentation())); ConversionUtil.convertToRepresentation(orderService.getOrderFrequencies(false), context.getRepresentation()));
/** * @see OrderService#saveOrder(org.openmrs.Order, OrderContext) */ @Test public void saveOrder_shouldSetOrderTypeOfTestOrderToTestOrderIfNotSetAndConceptNotMapped() { TestOrder testOrder = new TestOrder(); testOrder.setPatient(patientService.getPatient(7)); Concept unmappedConcept = conceptService.getConcept(113); Assert.assertNull(orderService.getOrderTypeByConcept(unmappedConcept)); testOrder.setConcept(unmappedConcept); testOrder.setOrderer(providerService.getProvider(1)); testOrder.setCareSetting(orderService.getCareSetting(1)); Encounter encounter = encounterService.getEncounter(3); testOrder.setEncounter(encounter); testOrder.setDateActivated(encounter.getEncounterDatetime()); testOrder.setClinicalHistory("Patient had a negative reaction to the test in the past"); testOrder.setFrequency(orderService.getOrderFrequency(3)); testOrder.setSpecimenSource(conceptService.getConcept(22)); testOrder.setNumberOfRepeats(3); orderService.saveOrder(testOrder, null); Assert.assertNotNull(testOrder.getOrderType()); Assert.assertEquals(orderService.getOrderTypeByUuid(OrderType.TEST_ORDER_TYPE_UUID), testOrder.getOrderType()); }
/** * @see OrderService#saveOrder(org.openmrs.Order, OrderContext) */ @Test public void saveOrder_shouldNotAllowEditingAnExistingOrder() { final DrugOrder order = (DrugOrder) orderService.getOrder(5); expectedException.expect(UnchangeableObjectException.class); expectedException.expectMessage("Order.cannot.edit.existing"); orderService.saveOrder(order, null); }
private void validateUnitsAreAmongAllowedConcepts(Errors errors, DrugOrder order) { OrderService orderService = Context.getOrderService(); if (order.getDoseUnits() != null) { List<Concept> drugDosingUnits = orderService.getDrugDosingUnits(); if (!drugDosingUnits.contains(order.getDoseUnits())) { errors.rejectValue("doseUnits", "DrugOrder.error.notAmongAllowedConcepts"); List<Concept> drugDispensingUnits = orderService.getDrugDispensingUnits(); if (!drugDispensingUnits.contains(order.getQuantityUnits())) { errors.rejectValue("quantityUnits", "DrugOrder.error.notAmongAllowedConcepts"); List<Concept> drugDurationUnits = orderService.getDurationUnits(); if (!drugDurationUnits.contains(order.getDurationUnits())) { errors.rejectValue("durationUnits", "DrugOrder.error.notAmongAllowedConcepts"); List<Concept> routes = orderService.getDrugRoutes(); if (!routes.contains(order.getRoute())) { errors.rejectValue("route", "DrugOrder.error.routeNotAmongAllowedConcepts");
/** * @see OrderService#getOrders(org.openmrs.Patient, org.openmrs.CareSetting, * org.openmrs.OrderType, boolean) */ @Test public void getOrders_shouldGetAllUnvoidedMatchesIfIncludeVoidedIsSetToFalse() { Patient patient = patientService.getPatient(2); CareSetting outPatient = orderService.getCareSetting(1); OrderType testOrderType = orderService.getOrderType(2); assertEquals(3, orderService.getOrders(patient, outPatient, testOrderType, false).size()); }
careSetting = orderService.getCareSettingByUuid(careSettingUuid); if (careSetting == null) { throw new ObjectNotFoundException(); for (String orderTypeUuid : orderTypeUuids.split(",")) { if (!orderTypeUuid.trim().equalsIgnoreCase("")) { orderType = orderService.getOrderTypeByUuid(orderTypeUuid); if (orderType != null) { orderTypes.add(orderType); List<Order> orders = orderService.getOrders(orderSearchCriteria);
Context.getOrderService().saveOrderGroup(og); Context.getOrderService().saveOrder(o, null); OrderGroup savedOrderGroup = Context.getOrderService().getOrderGroupByUuid(orderGroup.getUuid()); Order savedOrder = Context.getOrderService().getOrderByUuid(orderWithoutOrderGroup.getUuid());
@Test public void shouldReviseAnOrderAndFlushSuccessfully() { Order originalOrder = orderService.getOrder(111); assertTrue(OrderUtilTest.isActiveOrder(originalOrder, null)); final Patient patient = originalOrder.getPatient(); List<Order> originalActiveOrders = orderService.getActiveOrders(patient, null, null, null); final int originalOrderCount = originalActiveOrders.size(); assertTrue(originalActiveOrders.contains(originalOrder)); Order revisedOrder = originalOrder.cloneForRevision(); revisedOrder.setInstructions("Take after a meal"); revisedOrder.setDateActivated(new Date()); revisedOrder.setOrderer(providerService.getProvider(1)); revisedOrder.setEncounter(encounterService.getEncounter(3)); orderService.saveOrder(revisedOrder, null); Context.flushSession(); List<Order> activeOrders = orderService.getActiveOrders(patient, null, null, null); assertEquals(originalOrderCount, activeOrders.size()); assertFalse(OrderUtilTest.isActiveOrder(originalOrder, null)); }
/** * @see OrderService#purgeOrder(org.openmrs.Order, boolean) */ @Test public void purgeOrder_shouldDeleteOrderFromTheDatabase() { final String uuid = "9c21e407-697b-11e3-bd76-0800271c1b75"; Order order = orderService.getOrderByUuid(uuid); assertNotNull(order); orderService.purgeOrder(order); assertNull(orderService.getOrderByUuid(uuid)); }
/** * @see TestOrderValidator#validate(Object, org.springframework.validation.Errors) */ @Test public void validate_shouldFailValidationIfTheSpecimenSourceIsInvalid() { ConceptService conceptService = Context.getConceptService(); Concept specimenSource = conceptService.getConcept(3); OrderService orderService = Context.getOrderService(); assertThat(specimenSource, not(isIn(orderService.getDrugRoutes()))); TestOrder order = new TestOrder(); Patient patient = new Patient(8); order.setPatient(patient); order.setOrderType(orderService.getOrderTypeByName("Test order")); order.setConcept(conceptService.getConcept(5497)); order.setOrderer(new Provider()); order.setCareSetting(new CareSetting()); Encounter encounter = new Encounter(); encounter.setPatient(patient); order.setEncounter(encounter); order.setDateActivated(new Date()); order.setSpecimenSource(specimenSource); Errors errors = new BindException(order, "order"); new TestOrderValidator().validate(order, errors); Assert.assertTrue(errors.hasFieldErrors("specimenSource")); Assert.assertEquals("TestOrder.error.specimenSourceNotAmongAllowedConcepts", errors.getFieldError("specimenSource") .getCode()); }
/** * Fetches an orderType by uuid * * @see DelegatingCrudResource#getByUniqueId(java.lang.String) */ @Override public OrderType getByUniqueId(String uniqueId) { OrderType ot = Context.getOrderService().getOrderTypeByUuid(uniqueId); if (ot == null) { ot = Context.getOrderService().getOrderTypeByName(uniqueId); } return ot; }
/** * @see OrderService#getActiveOrders(org.openmrs.Patient, org.openmrs.OrderType, * org.openmrs.CareSetting, java.util.Date) */ @Test public void getActiveOrders_shouldReturnAllActiveOrdersForTheSpecifiedPatientAndCareSetting() { Patient patient = patientService.getPatient(2); CareSetting careSetting = orderService.getCareSetting(1); List<Order> orders = orderService.getActiveOrders(patient, null, careSetting, null); assertEquals(4, orders.size()); Order[] expectedOrders = { orderService.getOrder(3), orderService.getOrder(444), orderService.getOrder(5), orderService.getOrder(7) }; assertThat(orders, hasItems(expectedOrders)); }
/** * @see OrderService#saveOrder(Order, OrderContext) */ @Test public void saveOrder_shouldPassIfAnActiveDrugOrderForTheSameConceptAndDifferentDrugNonCodedExists() { executeDataSet("org/openmrs/api/include/OrderServiceTest-nonCodedDrugs.xml"); final Concept nonCodedConcept = orderService.getNonCodedDrugConcept(); //sanity check that we have an active order for the same concept DrugOrder duplicateOrder = (DrugOrder) orderService.getOrder(584); assertTrue(duplicateOrder.isActive()); assertEquals(nonCodedConcept, duplicateOrder.getConcept()); DrugOrder drugOrder = duplicateOrder.copy(); drugOrder.setDrugNonCoded("non coded drug paracetemol"); Order savedOrder = orderService.saveOrder(drugOrder, null); assertNotNull(orderService.getOrder(savedOrder.getOrderId())); }