@Test public void testAutoFill() throws Exception { // Does not throw error if patient is null new Appointment(entityManager).autoFill(); Patient patient = new Patient(entityManager); Appointment app = new Appointment(entityManager).setPatient(patient).autoFill(); assertNull(app.getNurseId()); assertNull(app.getStart()); assertNull(app.getEnd()); Appointment last = new Appointment(entityManager) .setNurseId(42) .setStart(DateTime.parse("2014-12-23T07:43:00")) .setEnd(DateTime.parse("2014-12-23T08:30:00")); patient.addAppointment(last); app.autoFill(); assertEquals(42, app.getNurseId().intValue()); assertEquals("" + last.getStartTime(), "" + app.getStartTime()); assertEquals("" + last.getEndTime(), "" + app.getEndTime()); app = new Appointment(entityManager).setPatient(patient).setStart(DateTime.parse("2014-12-29")); app.autoFill(); assertEquals(42, app.getNurseId().intValue()); assertEquals(12, app.getStart().getMonthOfYear()); assertEquals(29, app.getStart().getDayOfMonth()); assertEquals(2014, app.getStart().getYear()); assertEquals("" + last.getStartTime(), "" + app.getStartTime()); assertEquals("" + last.getEndTime(), "" + app.getEndTime()); }