KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > columba > calendar > parser > CalendarImporterTest


1 package org.columba.calendar.parser;
2
3 import java.io.File JavaDoc;
4 import java.util.Iterator JavaDoc;
5
6 import junit.framework.TestCase;
7
8 import org.columba.calendar.base.CalendarItem;
9 import org.columba.calendar.base.api.ICalendarItem;
10 import org.columba.calendar.model.api.IEventInfo;
11 import org.columba.calendar.model.api.IRecurrence;
12
13 import com.miginfocom.calendar.activity.recurrence.RecurrenceRule;
14
15 public class CalendarImporterTest extends TestCase {
16
17     public void testImportCalendar() {
18         File JavaDoc example1 = new File JavaDoc("calendar/src/test/resources/SunbirdEvents.ics");
19         CalendarItem calendarItem = new CalendarItem("example", ICalendarItem.TYPE.LOCAL, "example", null);
20         CalendarImporter importer = new CalendarImporter();
21         Iterator JavaDoc<IEventInfo> i = null;
22         try {
23             i = importer.importCalendar(calendarItem, example1);
24         } catch (Exception JavaDoc e) {
25             e.printStackTrace();
26             fail("Got following exception:" + e.getMessage());
27         }
28         
29         // check three entries
30
for (;i.hasNext();) {
31             IEventInfo entry = i.next();
32             // Event: Anniversary
33
if ("Anniversary".equals(entry.getEvent().getSummary())) {
34                 assertEquals("Anniversary", entry.getEvent().getCategories());
35                 assertEquals("Anniversary every year", entry.getEvent().getDescription());
36                 assertEquals(15, entry.getEvent().getDtStamp().get(java.util.Calendar.DAY_OF_MONTH));
37                 assertEquals(0, entry.getEvent().getDtStamp().get(java.util.Calendar.MONTH));
38                 assertEquals(2007, entry.getEvent().getDtStamp().get(java.util.Calendar.YEAR));
39                 // 204524
40
assertEquals(21, entry.getEvent().getDtStamp().get(java.util.Calendar.HOUR_OF_DAY));
41                 assertEquals(45, entry.getEvent().getDtStamp().get(java.util.Calendar.MINUTE));
42                 assertEquals(24, entry.getEvent().getDtStamp().get(java.util.Calendar.SECOND));
43                 assertEquals("cb5f77cd-655d-45f9-9b78-04bb668abccc", entry.getEvent().getId());
44                 assertEquals(IRecurrence.RECURRENCE_ANNUALLY, entry.getEvent().getRecurrence().getType());
45                 assertEquals(IRecurrence.RECURRENCE_END_FOREVER, entry.getEvent().getRecurrence().getEndType());
46                 assertEquals("20070125", entry.getEvent().getDtStart().get(java.util.Calendar.YEAR) + "0" + (entry.getEvent().getDtStart().get(java.util.Calendar.MONTH)+1) + "" + entry.getEvent().getDtStart().get(java.util.Calendar.DAY_OF_MONTH) + "");
47                 assertEquals("20070126", entry.getEvent().getDtEnd().get(java.util.Calendar.YEAR) + "0" + (entry.getEvent().getDtEnd().get(java.util.Calendar.MONTH)+1) + "" + entry.getEvent().getDtEnd().get(java.util.Calendar.DAY_OF_MONTH) + "");
48             // Event: All Day Event
49
} else if ("AllDayEvent".equals(entry.getEvent().getSummary())) {
50                 assertEquals("Business", entry.getEvent().getCategories());
51                 assertEquals("I will the whole day do some work", entry.getEvent().getDescription());
52                 assertEquals("PUBLIC", entry.getEvent().getEventClass());
53                 assertEquals("5", entry.getEvent().getPriority());
54                 assertEquals(15, entry.getEvent().getDtStamp().get(java.util.Calendar.DAY_OF_MONTH));
55                 assertEquals(0, entry.getEvent().getDtStamp().get(java.util.Calendar.MONTH));
56                 assertEquals(2007, entry.getEvent().getDtStamp().get(java.util.Calendar.YEAR));
57                 assertEquals("CONFIRMED", entry.getEvent().getStatus());
58                 assertEquals(23, entry.getEvent().getDtStart().get(java.util.Calendar.DAY_OF_MONTH));
59                 assertEquals(0, entry.getEvent().getDtStart().get(java.util.Calendar.MONTH));
60                 assertEquals(2007, entry.getEvent().getDtStart().get(java.util.Calendar.YEAR));
61                 assertEquals(0, entry.getEvent().getDtStart().get(java.util.Calendar.HOUR_OF_DAY));
62                 assertEquals(0, entry.getEvent().getDtStart().get(java.util.Calendar.MINUTE));
63                 assertEquals(0, entry.getEvent().getDtStart().get(java.util.Calendar.SECOND));
64                 assertEquals(24, entry.getEvent().getDtEnd().get(java.util.Calendar.DAY_OF_MONTH));
65                 assertEquals(0, entry.getEvent().getDtEnd().get(java.util.Calendar.MONTH));
66                 assertEquals(2007, entry.getEvent().getDtEnd().get(java.util.Calendar.YEAR));
67                 assertEquals(0, entry.getEvent().getDtEnd().get(java.util.Calendar.HOUR_OF_DAY));
68                 assertEquals(0, entry.getEvent().getDtEnd().get(java.util.Calendar.MINUTE));
69                 assertEquals(0, entry.getEvent().getDtEnd().get(java.util.Calendar.SECOND));
70                 assertEquals("at home", entry.getEvent().getLocation());
71                 assertEquals("8197de12-8a20-4dd0-a13a-4e932745914e", entry.getEvent().getId());
72             // Event: Normal Event
73
} else if ("NormalEvent".equals(entry.getEvent().getSummary())) {
74                 System.out.println("Normal Event");
75             }
76         }
77     }
78
79     public void testImportCalendarRecurrence() {
80         File JavaDoc example1 = new File JavaDoc("calendar/src/test/resources/SunbirdRecurrendEvents.ics");
81         CalendarItem calendarItem = new CalendarItem("example", ICalendarItem.TYPE.LOCAL, "example", null);
82         CalendarImporter importer = new CalendarImporter();
83         Iterator JavaDoc<IEventInfo> i = null;
84         try {
85             i = importer.importCalendar(calendarItem, example1);
86         } catch (Exception JavaDoc e) {
87             e.printStackTrace();
88             fail("Got following exception:" + e.getMessage());
89         }
90         
91         // check three entries
92
for (;i.hasNext();) {
93             IEventInfo entry = i.next();
94
95         }
96     }
97     
98     public void testCorrectUid() {
99         String JavaDoc uid = "";
100         assertEquals(true, CalendarImporter.correctUid(uid).length() > 0);
101         uid = "uuid:197601031$§%&§$%&&-_";
102         assertEquals("uuid-197601031----------_", CalendarImporter.correctUid(uid));
103     }
104     
105 }
106
Popular Tags