aboutsummaryrefslogtreecommitdiffstats
path: root/test
diff options
context:
space:
mode:
authorUlf Jasper2012-06-08 19:34:09 +0200
committerUlf Jasper2012-06-08 19:34:09 +0200
commitee5747918fd72e3ced7bc59949d5e40c84144804 (patch)
treed1b741e3b35901bed37462fb94e148787333ee9e /test
parent4b56d0fe74527ddab5a976200b479376faa6b6f4 (diff)
downloademacs-ee5747918fd72e3ced7bc59949d5e40c84144804.tar.gz
emacs-ee5747918fd72e3ced7bc59949d5e40c84144804.zip
icalendar / icalendar-tests: Fix Bug#11473 -- unescape commas in timezone specs
2012-06-08 Nick Dokos <nicholas.dokos@hp.com> * calendar/icalendar.el (icalendar--parse-vtimezone): Import TZID string properly, fixes Bug#11473. 2012-06-08 Ulf Jasper <ulf.jasper@web.de> * automated/icalendar-tests.el (icalendar--parse-vtimezone): Test escaped commas in TZID (Bug#11473). (icalendar-import-with-timezone): New. (icalendar-real-world): Add new testcase as found in the bugreport of Bug#11473.
Diffstat (limited to 'test')
-rw-r--r--test/ChangeLog8
-rw-r--r--test/automated/icalendar-tests.el109
2 files changed, 114 insertions, 3 deletions
diff --git a/test/ChangeLog b/test/ChangeLog
index f5fa81f4a5a..ddd26bf492a 100644
--- a/test/ChangeLog
+++ b/test/ChangeLog
@@ -1,3 +1,11 @@
12012-06-08 Ulf Jasper <ulf.jasper@web.de>
2
3 * automated/icalendar-tests.el (icalendar--parse-vtimezone): Test
4 escaped commas in TZID (Bug#11473).
5 (icalendar-import-with-timezone): New.
6 (icalendar-real-world): Add new testcase as given in the bugreport
7 of Bug#11473.
8
12012-05-29 Ulf Jasper <ulf.jasper@web.de> 92012-05-29 Ulf Jasper <ulf.jasper@web.de>
2 10
3 * automated/icalendar-tests.el (icalendar-tests--test-import): 11 * automated/icalendar-tests.el (icalendar-tests--test-import):
diff --git a/test/automated/icalendar-tests.el b/test/automated/icalendar-tests.el
index dbf262d9f77..58b8379bb11 100644
--- a/test/automated/icalendar-tests.el
+++ b/test/automated/icalendar-tests.el
@@ -188,7 +188,7 @@ END:VTIMEZONE
188 (should (string= "STD-02:00DST-03:00,M3.5.0/03:00:00,M10.5.0/04:00:00" 188 (should (string= "STD-02:00DST-03:00,M3.5.0/03:00:00,M10.5.0/04:00:00"
189 (cdr result))) 189 (cdr result)))
190 (setq vtimezone (icalendar-tests--get-ical-event "BEGIN:VTIMEZONE 190 (setq vtimezone (icalendar-tests--get-ical-event "BEGIN:VTIMEZONE
191TZID:anothername 191TZID:anothername\, with a comma
192BEGIN:STANDARD 192BEGIN:STANDARD
193DTSTART:16010101T040000 193DTSTART:16010101T040000
194TZOFFSETFROM:+0300 194TZOFFSETFROM:+0300
@@ -204,7 +204,7 @@ END:DAYLIGHT
204END:VTIMEZONE 204END:VTIMEZONE
205")) 205"))
206 (setq result (icalendar--parse-vtimezone vtimezone)) 206 (setq result (icalendar--parse-vtimezone vtimezone))
207 (should (string= "anothername" (car result))) 207 (should (string= "anothername, with a comma" (car result)))
208 (message (cdr result)) 208 (message (cdr result))
209 (should (string= "STD-02:00DST-03:00,M3.2.1/03:00:00,M10.2.1/04:00:00" 209 (should (string= "STD-02:00DST-03:00,M3.2.1/03:00:00,M10.2.1/04:00:00"
210 (cdr result))))) 210 (cdr result)))))
@@ -1103,6 +1103,44 @@ DTEND;VALUE=DATE-TIME:20030919T113000"
1103 "&19/9/2003 09:00-11:30 non-recurring\n UID: 1234567890uid\n" 1103 "&19/9/2003 09:00-11:30 non-recurring\n UID: 1234567890uid\n"
1104 "&9/19/2003 09:00-11:30 non-recurring\n UID: 1234567890uid\n")) 1104 "&9/19/2003 09:00-11:30 non-recurring\n UID: 1234567890uid\n"))
1105 1105
1106(ert-deftest icalendar-import-with-timezone ()
1107 ;; bug#11473
1108 (icalendar-tests--test-import
1109 "BEGIN:VCALENDAR
1110BEGIN:VTIMEZONE
1111TZID:fictional\, nonexistent\, arbitrary
1112BEGIN:STANDARD
1113DTSTART:20100101T000000
1114TZOFFSETFROM:+0200
1115TZOFFSETTO:-0200
1116RRULE:FREQ=YEARLY;INTERVAL=1;BYDAY=1SU;BYMONTH=01
1117END:STANDARD
1118BEGIN:DAYLIGHT
1119DTSTART:20101201T000000
1120TZOFFSETFROM:-0200
1121TZOFFSETTO:+0200
1122RRULE:FREQ=YEARLY;INTERVAL=1;BYDAY=1SU;BYMONTH=11
1123END:DAYLIGHT
1124END:VTIMEZONE
1125BEGIN:VEVENT
1126SUMMARY:standardtime
1127DTSTART;TZID=\"fictional, nonexistent, arbitrary\":20120115T120000
1128DTEND;TZID=\"fictional, nonexistent, arbitrary\":20120115T123000
1129END:VEVENT
1130BEGIN:VEVENT
1131SUMMARY:daylightsavingtime
1132DTSTART;TZID=\"fictional, nonexistent, arbitrary\":20121215T120000
1133DTEND;TZID=\"fictional, nonexistent, arbitrary\":20121215T123000
1134END:VEVENT
1135END:VCALENDAR"
1136 ;; "standardtime" begins first sunday in january and is 4 hours behind CET
1137 ;; "daylightsavingtime" begins first sunday in november and is 1 hour before CET
1138 "&2012/1/15 15:00-15:30 standardtime
1139&2012/12/15 11:00-11:30 daylightsavingtime
1140"
1141 nil
1142 nil)
1143 )
1106;; ====================================================================== 1144;; ======================================================================
1107;; Cycle 1145;; Cycle
1108;; ====================================================================== 1146;; ======================================================================
@@ -1863,7 +1901,72 @@ DTEND;VALUE=DATE:19001102
1863RRULE:FREQ=YEARLY;INTERVAL=1;BYMONTH=11;BYMONTHDAY=1 1901RRULE:FREQ=YEARLY;INTERVAL=1;BYMONTH=11;BYMONTHDAY=1
1864SUMMARY:NNN Wwwwwwww Wwwww - Aaaaaa Pppppppp rrrrrr ddd oo Nnnnnnnn 30 1902SUMMARY:NNN Wwwwwwww Wwwww - Aaaaaa Pppppppp rrrrrr ddd oo Nnnnnnnn 30
1865") 1903")
1866 ) 1904
1905 ;; bug#11473
1906 (icalendar-tests--test-import
1907 "BEGIN:VCALENDAR
1908METHOD:REQUEST
1909PRODID:Microsoft Exchange Server 2007
1910VERSION:2.0
1911BEGIN:VTIMEZONE
1912TZID:(UTC+01:00) Amsterdam\, Berlin\, Bern\, Rome\, Stockholm\, Vienna
1913BEGIN:STANDARD
1914DTSTART:16010101T030000
1915TZOFFSETFROM:+0200
1916TZOFFSETTO:+0100
1917RRULE:FREQ=YEARLY;INTERVAL=1;BYDAY=-1SU;BYMONTH=10
1918END:STANDARD
1919BEGIN:DAYLIGHT
1920DTSTART:16010101T020000
1921TZOFFSETFROM:+0100
1922TZOFFSETTO:+0200
1923RRULE:FREQ=YEARLY;INTERVAL=1;BYDAY=-1SU;BYMONTH=3
1924END:DAYLIGHT
1925END:VTIMEZONE
1926BEGIN:VEVENT
1927ORGANIZER;CN=\"A. Luser\":MAILTO:a.luser@foo.com
1928ATTENDEE;ROLE=REQ-PARTICIPANT;PARTSTAT=NEEDS-ACTION;RSVP=TRUE;CN=\"Luser, Oth
1929 er\":MAILTO:other.luser@foo.com
1930DESCRIPTION;LANGUAGE=en-US:\nWhassup?\n\n
1931SUMMARY;LANGUAGE=en-US:Query
1932DTSTART;TZID=\"(UTC+01:00) Amsterdam, Berlin, Bern, Rome, Stockholm, Vienna\"
1933 :20120515T150000
1934DTEND;TZID=\"(UTC+01:00) Amsterdam, Berlin, Bern, Rome, Stockholm, Vienna\":2
1935 0120515T153000
1936UID:040000008200E00074C5B7101A82E0080000000020FFAED0CFEFCC01000000000000000
1937 010000000575268034ECDB649A15349B1BF240F15
1938RECURRENCE-ID;TZID=\"(UTC+01:00) Amsterdam, Berlin, Bern, Rome, Stockholm, V
1939 ienna\":20120515T170000
1940CLASS:PUBLIC
1941PRIORITY:5
1942DTSTAMP:20120514T153645Z
1943TRANSP:OPAQUE
1944STATUS:CONFIRMED
1945SEQUENCE:15
1946LOCATION;LANGUAGE=en-US:phone
1947X-MICROSOFT-CDO-APPT-SEQUENCE:15
1948X-MICROSOFT-CDO-OWNERAPPTID:1907632092
1949X-MICROSOFT-CDO-BUSYSTATUS:TENTATIVE
1950X-MICROSOFT-CDO-INTENDEDSTATUS:BUSY
1951X-MICROSOFT-CDO-ALLDAYEVENT:FALSE
1952X-MICROSOFT-CDO-IMPORTANCE:1
1953X-MICROSOFT-CDO-INSTTYPE:3
1954BEGIN:VALARM
1955ACTION:DISPLAY
1956DESCRIPTION:REMINDER
1957TRIGGER;RELATED=START:-PT15M
1958END:VALARM
1959END:VEVENT
1960END:VCALENDAR"
1961 nil
1962 "&15/5/2012 15:00-15:30 Query
1963 Location: phone
1964 Organizer: MAILTO:a.luser@foo.com
1965 Status: CONFIRMED
1966 Class: PUBLIC
1967 UID: 040000008200E00074C5B7101A82E0080000000020FFAED0CFEFCC01000000000000000010000000575268034ECDB649A15349B1BF240F15
1968" nil)
1969)
1867 1970
1868(provide 'icalendar-tests) 1971(provide 'icalendar-tests)
1869;;; icalendar-tests.el ends here 1972;;; icalendar-tests.el ends here