Search in sources :

Example 21 with Day

use of com.artezio.arttime.datamodel.Day in project ART-TIME by Artezio.

the class WorkdaysCalendarRepositoryTest method testGetSpecialDays_ByPeriod.

@Test
public void testGetSpecialDays_ByPeriod() {
    WorkdaysCalendar workdaysCalendar = new WorkdaysCalendar();
    workdaysCalendar.setName("calendarName");
    Date start = new GregorianCalendar(2011, 0, 2).getTime();
    Date finish = new GregorianCalendar(2011, 0, 29).getTime();
    Date expectedDate = new GregorianCalendar(2011, 0, 15).getTime();
    Date unexpectedDate1 = new GregorianCalendar(2011, 0, 1).getTime();
    Date unexpectedDate2 = new GregorianCalendar(2011, 0, 30).getTime();
    Period period = new Period(start, finish);
    Day expected1 = new Day(start, workdaysCalendar);
    Day expected2 = new Day(expectedDate, workdaysCalendar);
    Day expected3 = new Day(finish, workdaysCalendar);
    Day unexpected1 = new Day(unexpectedDate1, workdaysCalendar);
    Day unexpected2 = new Day(unexpectedDate2, workdaysCalendar);
    entityManager.persist(workdaysCalendar);
    entityManager.persist(expected1);
    entityManager.persist(expected3);
    entityManager.persist(expected2);
    entityManager.persist(unexpected1);
    entityManager.persist(unexpected2);
    List<Day> actuals = workdaysCalendarRepository.getSpecialDays(workdaysCalendar, period);
    assertEquals(3, actuals.size());
    assertFalse(actuals.contains(unexpected1));
    assertFalse(actuals.contains(unexpected2));
}
Also used : WorkdaysCalendar(com.artezio.arttime.datamodel.WorkdaysCalendar) Period(com.artezio.arttime.datamodel.Period) Day(com.artezio.arttime.datamodel.Day) CalendarUtils.getOffsetDate(com.artezio.arttime.test.utils.CalendarUtils.getOffsetDate) Test(org.junit.Test)

Example 22 with Day

use of com.artezio.arttime.datamodel.Day in project ART-TIME by Artezio.

the class WorkdaysCalendarServiceTest method testGetDays.

@Test
public void testGetDays() {
    Date start = new Date();
    Date finish = getOffsetDate(2);
    Period period = new Period(start, finish);
    WorkdaysCalendar calendar = new WorkdaysCalendar("calendar");
    Day day = new Day(new Date(), calendar);
    expect(workdaysCalendarRepository.getSpecialDays(anyObject(), anyObject())).andReturn(new ArrayList<>());
    replay(workdaysCalendarRepository);
    List<Day> actual = workdaysCalendarService.getDays(calendar, period);
    assertNotNull(actual);
    assertEquals(3, actual.size());
}
Also used : WorkdaysCalendar(com.artezio.arttime.datamodel.WorkdaysCalendar) Period(com.artezio.arttime.datamodel.Period) Day(com.artezio.arttime.datamodel.Day) CalendarUtils.getOffsetDate(com.artezio.arttime.test.utils.CalendarUtils.getOffsetDate) Test(org.junit.Test)

Example 23 with Day

use of com.artezio.arttime.datamodel.Day in project ART-TIME by Artezio.

the class WorkdaysCalendarRepositoryTest method testGetSpecialDays_ByCalendar.

@Test
public void testGetSpecialDays_ByCalendar() {
    WorkdaysCalendar expectedCalendar = new WorkdaysCalendar();
    WorkdaysCalendar unexpectedCalendar = new WorkdaysCalendar();
    String expectedName = "expected calendar name";
    String unexpectedName = "unexpected calendar name";
    expectedCalendar.setName(expectedName);
    unexpectedCalendar.setName(unexpectedName);
    Date start = new Date();
    Date finish = getOffsetDate(1);
    Day expectedDay = new Day(start, expectedCalendar);
    Day unexpectedDay = new Day(start, unexpectedCalendar);
    entityManager.persist(expectedCalendar);
    entityManager.persist(unexpectedCalendar);
    entityManager.persist(expectedDay);
    entityManager.persist(unexpectedDay);
    Period period = new Period(start, finish);
    List<Day> actuals = workdaysCalendarRepository.getSpecialDays(expectedCalendar, period);
    assertEquals(1, actuals.size());
    assertTrue(actuals.contains(expectedDay));
}
Also used : WorkdaysCalendar(com.artezio.arttime.datamodel.WorkdaysCalendar) Period(com.artezio.arttime.datamodel.Period) Day(com.artezio.arttime.datamodel.Day) CalendarUtils.getOffsetDate(com.artezio.arttime.test.utils.CalendarUtils.getOffsetDate) Test(org.junit.Test)

Example 24 with Day

use of com.artezio.arttime.datamodel.Day in project ART-TIME by Artezio.

the class WorkdaysCalendarRepositoryTest method testSaveDayWithNullFieldsThenLoadNotNull.

@Test
public void testSaveDayWithNullFieldsThenLoadNotNull() {
    WorkdaysCalendar workdaysCalendar = new WorkdaysCalendar("calendar");
    Day day = new Day(new Date(), workdaysCalendar);
    day.setHoliday(null);
    day.setWorking(null);
    entityManager.persist(workdaysCalendar);
    entityManager.persist(day);
    Long dayId = day.getId();
    entityManager.flush();
    entityManager.clear();
    Day persistedDay = entityManager.find(Day.class, dayId);
    assertNotNull(persistedDay.isWorking());
    assertNotNull(persistedDay.isHoliday());
    assertFalse(persistedDay.isHoliday());
}
Also used : WorkdaysCalendar(com.artezio.arttime.datamodel.WorkdaysCalendar) Day(com.artezio.arttime.datamodel.Day) CalendarUtils.getOffsetDate(com.artezio.arttime.test.utils.CalendarUtils.getOffsetDate) Test(org.junit.Test)

Example 25 with Day

use of com.artezio.arttime.datamodel.Day in project ART-TIME by Artezio.

the class WorkdaysCalendarRepositoryTest method testCreateOrUpdateDays_Update.

@Test
public void testCreateOrUpdateDays_Update() {
    WorkdaysCalendar workdaysCalendar = new WorkdaysCalendar("calendar-testCreateOrUpdateDays_Update");
    Day day = new Day(new Date(), workdaysCalendar);
    entityManager.persist(workdaysCalendar);
    entityManager.persist(day);
    WorkdaysCalendar calendar = new WorkdaysCalendar();
    String expected = "expected calendar name";
    calendar.setName(expected);
    entityManager.persist(calendar);
    day.setWorkdaysCalendar(calendar);
    workdaysCalendarRepository.update(Arrays.asList(day));
    assertEquals(expected, day.getWorkdaysCalendar().getName());
}
Also used : WorkdaysCalendar(com.artezio.arttime.datamodel.WorkdaysCalendar) Day(com.artezio.arttime.datamodel.Day) CalendarUtils.getOffsetDate(com.artezio.arttime.test.utils.CalendarUtils.getOffsetDate) Test(org.junit.Test)

Aggregations

Day (com.artezio.arttime.datamodel.Day)37 Test (org.junit.Test)33 WorkdaysCalendar (com.artezio.arttime.datamodel.WorkdaysCalendar)25 Period (com.artezio.arttime.datamodel.Period)17 CalendarUtils.getOffsetDate (com.artezio.arttime.test.utils.CalendarUtils.getOffsetDate)16 PrepareForTest (org.powermock.core.classloader.annotations.PrepareForTest)15 Date (java.util.Date)8 DateFormat (java.text.DateFormat)5 SimpleDateFormat (java.text.SimpleDateFormat)5 GregorianCalendar (java.util.GregorianCalendar)2 SelectEvent (org.primefaces.event.SelectEvent)1