/** * @see org.openmrs.api.PersonService#retireRelationshipType(org.openmrs.RelationshipType, * java.lang.String) */ @Override public RelationshipType retireRelationshipType(RelationshipType type, String retiredReason) throws APIException { if (retiredReason == null || retiredReason.length() < 1) { throw new APIException("Relationship.retiring.reason.required", (Object[]) null); } type.setRetired(true); type.setRetiredBy(Context.getAuthenticatedUser()); type.setDateRetired(new Date()); type.setRetireReason(retiredReason); return Context.getPersonService().saveRelationshipType(type); }
/** * @see org.openmrs.api.PersonService#unretireRelationshipType(org.openmrs.RelationshipType) */ @Override public RelationshipType unretireRelationshipType(RelationshipType relationshipType) { relationshipType.setRetired(false); relationshipType.setRetiredBy(null); relationshipType.setDateRetired(null); relationshipType.setRetireReason(null); return Context.getPersonService().saveRelationshipType(relationshipType); }
/** * Test for all the field being set to some values * @see RelationshipTypeValidator#validate(Object,Errors) */ @Test public void validate_shouldPassValidationIfFieldLengthsAreCorrect() { RelationshipType type = new RelationshipType(); type.setaIsToB("A is To B"); type.setbIsToA("B is To A"); type.setDescription("description"); type.setRetireReason("retireReason"); Errors errors = new BindException(type, "type"); new RelationshipTypeValidator().validate(type, errors); Assert.assertFalse(errors.hasErrors()); }
/** * Test for all the field being set to some values * @see RelationshipTypeValidator#validate(Object,Errors) */ @Test public void validate_shouldFailValidationIfFieldLengthsAreNotCorrect() { RelationshipType type = new RelationshipType(); type .setaIsToB("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"); type .setbIsToA("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"); type .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"); type .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(type, "type"); new RelationshipTypeValidator().validate(type, errors); Assert.assertTrue(errors.hasFieldErrors("aIsToB")); Assert.assertTrue(errors.hasFieldErrors("bIsToA")); Assert.assertTrue(errors.hasFieldErrors("description")); Assert.assertTrue(errors.hasFieldErrors("retireReason")); } }