Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /**
- * The contents of this file are subject to the OpenMRS Public License
- * Version 1.0 (the "License"); you may not use this file except in
- * compliance with the License. You may obtain a copy of the License at
- *
- * Software distributed under the License is distributed on an "AS IS"
- * basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See the
- * License for the specific language governing rights and limitations
- * under the License.
- *
- * Copyright (C) OpenMRS, LLC. All Rights Reserved.
- */
- package org.openmrs.validator;
- import org.apache.commons.logging.Log;
- import org.apache.commons.logging.LogFactory;
- import org.openmrs.RelationshipType;
- import org.openmrs.annotation.Handler;
- import org.springframework.validation.Errors;
- import org.springframework.validation.ValidationUtils;
- import org.springframework.validation.Validator;
- /**
- * Validates attributes on the {@link RelationshipType} object.
- *
- * @since 1.10
- */
- @Handler(supports = { RelationshipType.class }, order = 50)
- public class RelationshipTypeValidator implements Validator {
- /** Log for this class and subclasses */
- protected final Log log = LogFactory.getLog(getClass());
- /**
- * Determines if the command object being submitted is a valid type
- *
- * @see org.springframework.validation.Validator#supports(java.lang.Class)
- */
- @SuppressWarnings("unchecked")
- public boolean supports(Class c) {
- return c.equals(RelationshipType.class);
- }
- /**
- * @see org.springframework.validation.Validator#validate(java.lang.Object, org.springframework.validation.Errors)
- * @should fail validation if aIsToB(or A is To B) is null or empty or whitespace
- * @should fail validation if bIsToA(or B is To A) is null or empty or whitespace
- * @should fail validation if Description is null or empty or whitespace
- *
- */
- public void validate(Object obj, Errors errors) {
- RelationshipType relationshipType = (RelationshipType) obj;
- if (relationshipType == null) {
- errors.rejectValue("relationshipType", "error.general");
- }
- else {
- ValidationUtils.rejectIfEmptyOrWhitespace(errors, "aIsToB", "RelationshipType.aIsToB.required");
- ValidationUtils.rejectIfEmptyOrWhitespace(errors, "bIsToA", "RelationshipType.bIsToA.required");
- ValidationUtils.rejectIfEmptyOrWhitespace(errors, "description", "error.description");
- }
- }
- }
- package org.openmrs.validator;
- import org.junit.Assert;
- import org.junit.Test;
- import org.openmrs.RelationshipType;
- import org.springframework.validation.BindException;
- import org.springframework.validation.Errors;
- public class RelationshipTypeValidatorTest {
- /**
- * @see RelationshipTypeValidator#validate(Object,Errors)
- * @verifies fail validation if aIsToB(or A is To B) is null or empty or whitespace
- */
- @Test
- public void validate_shouldFailValidationIfaIsToBIsNullOrEmptyOrWhitespace()
- throws Exception {
- RelationshipType type = new RelationshipType();
- type.setaIsToB(null);
- type.setDescription("A is To B");
- Errors errors = new BindException(type, "type");
- new RelationshipTypeValidator().validate(type, errors);
- Assert.assertTrue(errors.hasFieldErrors("aIsToB"));
- type.setaIsToB("");
- errors = new BindException(type, "type");
- new RelationshipTypeValidator().validate(type, errors);
- Assert.assertTrue(errors.hasFieldErrors("aIsToB"));
- type.setaIsToB(" ");
- errors = new BindException(type, "type");
- new RelationshipTypeValidator().validate(type, errors);
- Assert.assertTrue(errors.hasFieldErrors("aIsToB"));
- }
- /**
- * @see RelationshipTypeValidator#validate(Object,Errors)
- * @verifies fail validation if bIsToA(or B is To A) is null or empty or whitespace
- */
- @Test
- public void validate_shouldFailValidationIfbIsToAIsNullOrEmptyOrWhitespace()
- throws Exception {
- RelationshipType type = new RelationshipType();
- type.setbIsToA(null);
- type.setDescription("B is To A");
- Errors errors = new BindException(type, "type");
- new RelationshipTypeValidator().validate(type, errors);
- Assert.assertTrue(errors.hasFieldErrors("bIsToA"));
- type.setbIsToA("");
- errors = new BindException(type, "type");
- new RelationshipTypeValidator().validate(type, errors);
- Assert.assertTrue(errors.hasFieldErrors("bIsToA"));
- type.setbIsToA(" ");
- errors = new BindException(type, "type");
- new RelationshipTypeValidator().validate(type, errors);
- Assert.assertTrue(errors.hasFieldErrors("bIsToA"));
- }
- /**
- * @see RelationshipTypeValidator#validate(Object,Errors)
- * @verifies fail validation if description is null or empty or whitespace
- */
- @Test
- public void validate_shouldFailValidationIfDescriptionIsNullOrEmptyOrWhitespace()
- throws Exception {
- RelationshipType type = new RelationshipType();
- type.setName("name");
- type.setDescription(null);
- Errors errors = new BindException(type, "type");
- new RelationshipTypeValidator().validate(type, errors);
- Assert.assertFalse(errors.hasFieldErrors("description"));
- type.setDescription("");
- errors = new BindException(type, "type");
- new RelationshipTypeValidator().validate(type, errors);
- Assert.assertFalse(errors.hasFieldErrors("description"));
- type.setDescription(" ");
- errors = new BindException(type, "type");
- new RelationshipTypeValidator().validate(type, errors);
- Assert.assertFalse(errors.hasFieldErrors("description"));
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement