/** * Convenience constructor that takes in the elements required to save this OrderType to the * database * * @param name The name of this order Type * @param description A short description about this order type * @param javaClassName The fully qualified java class name */ public OrderType(String name, String description, String javaClassName) { setName(name); setDescription(description); setJavaClassName(javaClassName); }
/** * @see org.openmrs.OrderType#getJavaClass() */ @Test public void setJavaClass_shouldGetJavaClassObject() { //Create a new OrderType OrderType orderType = new OrderType(); //Test with Integer class Class<?> clazz = Integer.class; orderType.setJavaClassName(clazz.getName()); Assert.assertEquals(clazz, orderType.getJavaClass()); }
/** * @see OrderTypeValidator#validate(Object, org.springframework.validation.Errors) */ @Test public void validate_shouldPassIfAllFieldsAreCorrectForANewOrderType() { OrderType orderType = new OrderType(); orderType.setName("unique name"); orderType.setJavaClassName("org.openmrs.TestDrugOrder"); Collection<ConceptClass> col = new HashSet<>(); col.add(Context.getConceptService().getConceptClass(2)); orderType.setConceptClasses(col); Errors errors = new BindException(orderType, "orderType"); new OrderTypeValidator().validate(orderType, errors); Assert.assertFalse(errors.hasErrors()); }
/** * @see OrderTypeValidator#validate(Object, org.springframework.validation.Errors) */ @Test public void validate_shouldPassValidationIfFieldLengthsAreCorrect() { OrderType orderType = new OrderType(); orderType.setName("unique name"); orderType.setJavaClassName("org.openmrs.TestDrugOrder"); Collection<ConceptClass> col = new HashSet<>(); col.add(Context.getConceptService().getConceptClass(2)); orderType.setConceptClasses(col); orderType.setDescription("description"); orderType.setRetireReason("retireReason"); Errors errors = new BindException(orderType, "orderType"); new OrderTypeValidator().validate(orderType, errors); Assert.assertFalse(errors.hasErrors()); }
/** * @see OrderService#saveOrderType(org.openmrs.OrderType) */ @Test public void saveOrderType_shouldAddANewOrderTypeToTheDatabase() { int orderTypeCount = orderService.getOrderTypes(true).size(); OrderType orderType = new OrderType(); orderType.setName("New Order"); orderType.setJavaClassName("org.openmrs.NewTestOrder"); orderType.setDescription("New order type for testing"); orderType.setRetired(false); orderType = orderService.saveOrderType(orderType); assertNotNull(orderType); assertEquals("New Order", orderType.getName()); assertNotNull(orderType.getId()); assertEquals((orderTypeCount + 1), orderService.getOrderTypes(true).size()); }
/** * @see OrderTypeValidator#validate(Object, org.springframework.validation.Errors) */ @Test public void validate_shouldFailValidationIfFieldLengthsAreNotCorrect() { OrderType orderType = new OrderType(); orderType .setName("too long text too long text too long text too long text too long text too long text too long text too long text too long text too long text too long text too long text too long text too long text too long text too long text too long text too long text too long text too long text"); orderType .setJavaClassName("too long text too long text too long text too long text too long text too long text too long text too long text too long text too long text too long text too long text too long text too long text too long text too long text too long text too long text too long text too long text"); Collection<ConceptClass> col = new HashSet<>(); col.add(Context.getConceptService().getConceptClass(2)); orderType.setConceptClasses(col); orderType .setDescription("too long text too long text too long text too long text too long text too long text too long text too long text too long text too long text too long text too long text too long text too long text too long text too long text too long text too long text too long text too long text too long text too long text too long text too long text too long text too long text too long text too long text too long text too long text too long text too long text too long text too long text too long text too long text too long text too long text too long text too long text too long text too long text too long text too long text too long text too long text too long text too long text too long text too long text too long text too long text too long text too long text too long text too long text too long text too long text too long text too long text too long text too long text too long text too long text too long text too long text too long text too long text too long text too long text too long text too long text too long text too long text too long text too long text too long text too long text too long text too long text"); orderType .setRetireReason("too long text too long text too long text too long text too long text too long text too long text too long text too long text too long text too long text too long text too long text too long text too long text too long text too long text too long text too long text too long text"); Errors errors = new BindException(orderType, "orderType"); new OrderTypeValidator().validate(orderType, errors); Assert.assertEquals(true, errors.hasFieldErrors("name")); Assert.assertEquals(true, errors.hasFieldErrors("javaClassName")); Assert.assertEquals(true, errors.hasFieldErrors("description")); Assert.assertEquals(true, errors.hasFieldErrors("retireReason")); } }