/** * Called around every unvoid* method to set everything to null.<br> * <br> * * @see org.openmrs.api.handler.RequiredDataHandler#handle(org.openmrs.OpenmrsObject, * org.openmrs.User, java.util.Date, java.lang.String) * @should unset the personVoided bit * @should unset the personVoider * @should unset the personDateVoided * @should unset the personVoidReason * @should only act on already personVoided objects * @should not act on objects with a different personDateVoided */ @Override public void handle(Person person, User unvoidingUser, Date origParentVoidedDate, String unused) { // only operate on voided objects if (person.getPersonVoided() && (origParentVoidedDate == null || origParentVoidedDate.equals(person.getPersonDateVoided()))) { // only unvoid objects that were voided at the same time as the parent object person.setPersonVoided(false); person.setPersonVoidedBy(null); person.setPersonDateVoided(null); person.setPersonVoidReason(null); } }
/** * @see PersonVoidHandler#handle(Person,User,Date,String) */ @Test public void handle_shouldNotSetPersonDateVoidedIfNonNull() { Date d = new Date(new Date().getTime() - 1000); // a time that is not "now" VoidHandler<Person> handler = new PersonVoidHandler(); Person person = new Person(); person.setPersonDateVoided(d); // make personDateVoided non null handler.handle(person, null, new Date(), " "); assertEquals(d, person.getPersonDateVoided()); }
/** * @see PersonUnvoidHandler#handle(Person,User,Date,String) */ @Test public void handle_shouldNotActOnObjectsWithADifferentPersonDateVoided() { Date d = new Date(new Date().getTime() - 1000); // a time that isn't right now UnvoidHandler<Person> handler = new PersonUnvoidHandler(); Person person = new Person(); person.setPersonVoided(true); person.setPersonDateVoided(d); handler.handle(person, null, new Date(), "SOME REASON"); Assert.assertTrue(person.getPersonVoided()); } }
/** * @see PersonUnvoidHandler#handle(Person,User,Date,String) */ @Test public void handle_shouldUnsetThePersonDateVoided() { UnvoidHandler<Person> handler = new PersonUnvoidHandler(); Person person = new Person(); person.setPersonVoided(true); person.setPersonDateVoided(new Date()); handler.handle(person, null, null, null); Assert.assertNull(person.getPersonDateVoided()); }
person.setPersonDateVoided(dateCreated); person.setPersonDateVoided(null); person.setPersonVoidReason(null);
person.setPersonDateVoided(voidedDate);
setPersonVoided(person.getPersonVoided()); setPersonVoidedBy(person.getPersonVoidedBy()); setPersonDateVoided(person.getPersonDateVoided()); setPersonVoidReason(person.getPersonVoidReason());