1 19 20 package org.lucane.applications.calendar.util; 21 22 import junit.framework.*; 23 24 import java.util.Calendar ; 25 import java.util.ArrayList ; 26 27 import org.lucane.applications.calendar.Event; 28 29 public class CalendarUtilsTest extends TestCase 30 { 31 private Calendar calendar; 32 33 public CalendarUtilsTest(String title) 34 { 35 super(title); 36 } 37 38 public void setUp() 39 { 40 calendar = Calendar.getInstance(); 41 calendar.set(Calendar.DAY_OF_MONTH, 1); 42 calendar.set(Calendar.YEAR, 2004); 43 } 44 45 public void testFirstDayOfMonth() 46 { 47 calendar.set(Calendar.MONTH, Calendar.DECEMBER); 48 assertEquals(2, CalendarUtils.getFirstDayOfMonth(calendar, false)); 49 assertEquals(3, CalendarUtils.getFirstDayOfMonth(calendar, true)); 50 } 51 52 public void testFirstDayOfMonthSunday() 53 { 54 calendar.set(Calendar.MONTH, Calendar.AUGUST); 55 assertEquals(6, CalendarUtils.getFirstDayOfMonth(calendar, false)); 56 assertEquals(0, CalendarUtils.getFirstDayOfMonth(calendar, true)); 57 } 58 59 public void testDaysOfMonth() 60 { 61 calendar.set(Calendar.MONTH, Calendar.DECEMBER); 62 assertEquals(31, CalendarUtils.getDaysOfMonth(calendar)); 63 64 calendar.set(Calendar.MONTH, Calendar.FEBRUARY); 65 assertEquals(29, CalendarUtils.getDaysOfMonth(calendar)); 66 67 calendar.set(Calendar.YEAR, 2005); 68 assertEquals(28, CalendarUtils.getDaysOfMonth(calendar)); 69 } 70 71 public void testDispatchInMonth() 72 { 73 ArrayList [] dispatch; 74 75 calendar.set(Calendar.MONTH, Calendar.DECEMBER); 76 calendar.set(Calendar.DAY_OF_MONTH, 1); 77 calendar.set(Calendar.HOUR_OF_DAY, 16); 78 calendar.set(Calendar.MINUTE, 0); 79 long start = calendar.getTimeInMillis(); 80 long end = start + 3600*1000; 81 82 ArrayList events = new ArrayList (); 83 Event one = new Event(1, "type", "title", "orga", true, true, start, end, 0, ""); 84 events.add(one); 85 86 calendar.set(Calendar.DAY_OF_MONTH, 15); 87 start = calendar.getTimeInMillis(); 88 calendar.set(Calendar.DAY_OF_MONTH, 17); 89 end = calendar.getTimeInMillis(); 90 91 Event two = new Event(2, "type", "title", "orga", true, true, start, end, 0, ""); 92 events.add(two); 93 94 calendar.set(Calendar.DAY_OF_MONTH, 1); 95 dispatch = CalendarUtils.dispatchEventsInMonth(calendar, events.iterator(), false); 96 assertEquals(0, dispatch[0].size()); 97 assertEquals(0, dispatch[1].size()); 98 assertEquals(1, dispatch[2].size()); 99 assertEquals(0, dispatch[3].size()); 100 assertEquals(one, dispatch[2].get(0)); 101 102 assertEquals(0, dispatch[15].size()); 103 assertEquals(1, dispatch[16].size()); 104 assertEquals(1, dispatch[17].size()); 105 assertEquals(1, dispatch[18].size()); 106 assertEquals(0, dispatch[19].size()); 107 assertEquals(two, dispatch[16].get(0)); 108 assertEquals(two, dispatch[17].get(0)); 109 assertEquals(two, dispatch[18].get(0)); 110 } 111 112 public void testDispatchInWeek() 113 { 114 ArrayList [] dispatch; 115 116 calendar.set(Calendar.MONTH, Calendar.DECEMBER); 117 calendar.set(Calendar.DAY_OF_MONTH, 6); 118 calendar.set(Calendar.HOUR_OF_DAY, 16); 119 calendar.set(Calendar.MINUTE, 0); 120 long start = calendar.getTimeInMillis(); 121 long end = start + 3600*1000; 122 123 ArrayList events = new ArrayList (); 124 Event one = new Event(1, "type", "title", "orga", true, true, start, end, 0, ""); 125 events.add(one); 126 127 calendar.set(Calendar.DAY_OF_MONTH, 8); 128 start = calendar.getTimeInMillis(); 129 calendar.set(Calendar.DAY_OF_MONTH, 10); 130 end = calendar.getTimeInMillis(); 131 132 Event two = new Event(2, "type", "title", "orga", true, true, start, end, 0, ""); 133 events.add(two); 134 135 calendar.set(Calendar.DAY_OF_MONTH, 6); 136 dispatch = CalendarUtils.dispatchEventsInWeek(calendar, events.iterator(), false); 137 assertEquals(1, dispatch[0].size()); 138 assertEquals(0, dispatch[1].size()); 139 assertEquals(1, dispatch[2].size()); 140 assertEquals(1, dispatch[3].size()); 141 assertEquals(1, dispatch[4].size()); 142 assertEquals(0, dispatch[5].size()); 143 assertEquals(0, dispatch[6].size()); 144 145 assertEquals(one, dispatch[0].get(0)); 146 assertEquals(two, dispatch[2].get(0)); 147 assertEquals(two, dispatch[3].get(0)); 148 assertEquals(two, dispatch[4].get(0)); 149 } 150 } | Popular Tags |