diff options
author | Lukas Fleischer <calcurse@cryptocrack.de> | 2014-07-28 12:24:21 +0200 |
---|---|---|
committer | Lukas Fleischer <calcurse@cryptocrack.de> | 2014-07-28 12:43:00 +0200 |
commit | 81894cbbd8496dee4ea6d62d6ffc820482b4197d (patch) | |
tree | 2e3ccc05e11cca1da3e8f46c09774c1936181dcf | |
parent | 132cf86a6f10b965a10f5c736e320d61c20cee77 (diff) | |
download | calcurse-81894cbbd8496dee4ea6d62d6ffc820482b4197d.tar.gz calcurse-81894cbbd8496dee4ea6d62d6ffc820482b4197d.zip |
tests/: Add basic iCal import tests
Tests ical-002.sh and ical-003.sh currently fail due to bugs in duration
and exception parsing.
Reported-by: HÃ¥kan Jerning <jerning@home.se>
Signed-off-by: Lukas Fleischer <calcurse@cryptocrack.de>
-rw-r--r-- | test/Makefile.am | 6 | ||||
-rw-r--r-- | test/data/ical-001.ical | 12 | ||||
-rw-r--r-- | test/data/ical-002.ical | 28 | ||||
-rw-r--r-- | test/data/ical-003.ical | 25 | ||||
-rwxr-xr-x | test/ical-001.sh | 28 | ||||
-rwxr-xr-x | test/ical-002.sh | 31 | ||||
-rwxr-xr-x | test/ical-003.sh | 137 |
7 files changed, 267 insertions, 0 deletions
diff --git a/test/Makefile.am b/test/Makefile.am index 0ff07d3..5e1bfca 100644 --- a/test/Makefile.am +++ b/test/Makefile.am @@ -41,6 +41,9 @@ TESTS = \ event-004.sh \ event-005.sh \ event-006.sh \ + ical-001.sh \ + ical-002.sh \ + ical-003.sh \ next-001.sh \ search-001.sh \ bug-002.sh \ @@ -97,4 +100,7 @@ EXTRA_DIST = \ data/apts-event-006 \ data/apts-recur \ data/conf \ + data/ical-001.ical \ + data/ical-002.ical \ + data/ical-003.ical \ data/todo diff --git a/test/data/ical-001.ical b/test/data/ical-001.ical new file mode 100644 index 0000000..e4a1f78 --- /dev/null +++ b/test/data/ical-001.ical @@ -0,0 +1,12 @@ +BEGIN:VCALENDAR +VERSION:2.0 +BEGIN:VEVENT +DTSTART:19020101T000100 +DURATION:P1DT9H17M0S +SUMMARY:Calibrator's +END:VEVENT +BEGIN:VTODO +PRIORITY:1 +SUMMARY:Nary parabled Louvre's fleetest mered +END:VTODO +END:VCALENDAR diff --git a/test/data/ical-002.ical b/test/data/ical-002.ical new file mode 100644 index 0000000..915b84e --- /dev/null +++ b/test/data/ical-002.ical @@ -0,0 +1,28 @@ +BEGIN:VCALENDAR +VERSION:2.0 +BEGIN:VEVENT +DTSTART:20000101T000000 +DURATION:P1DT0H0M0S +SUMMARY:One day +END:VEVENT +BEGIN:VEVENT +DTSTART:20000101T000000 +DURATION:P1DT1H1M1S +SUMMARY:One day, one hour, one minute and one second +END:VEVENT +BEGIN:VEVENT +DTSTART:20000101T000000 +DURATION:PT1H1M1S +SUMMARY:One hour, one minute and one second +END:VEVENT +BEGIN:VEVENT +DTSTART:20000101T000000 +DURATION:PT1M1S +SUMMARY:One minute and one second +END:VEVENT +BEGIN:VEVENT +DTSTART:20000101T000000 +DURATION:PT1S +SUMMARY:One second +END:VEVENT +END:VCALENDAR diff --git a/test/data/ical-003.ical b/test/data/ical-003.ical new file mode 100644 index 0000000..599d24f --- /dev/null +++ b/test/data/ical-003.ical @@ -0,0 +1,25 @@ +BEGIN:VCALENDAR +VERSION:2.0 +BEGIN:VEVENT +DTSTART:20000101T000000 +DURATION:PT1H30M0S +RRULE:FREQ=DAILY;INTERVAL=2;UNTIL=20000201T000000;WKST=SU +EXDATE:20000115T000000,20000123T000000 +SUMMARY:Recurring appointment +END:VEVENT +BEGIN:VEVENT +DTSTART:20000101T000000 +DURATION:PT1H30M0S +RRULE:FREQ=WEEKLY;INTERVAL=1;UNTIL=20000201T000000;WKST=SU +EXDATE:20000122T000000 +SUMMARY:Weekly appointment +END:VEVENT +BEGIN:VEVENT +DTSTART:20000201T000000 +DURATION:PT1H30M0S +RRULE:FREQ=DAILY;INTERVAL=2;UNTIL=20000301T000000;WKST=SU +EXDATE:20000215T000000 +EXDATE:20000223T000000 +SUMMARY:Recurring appointment +END:VEVENT +END:VCALENDAR diff --git a/test/ical-001.sh b/test/ical-001.sh new file mode 100755 index 0000000..3fb6f87 --- /dev/null +++ b/test/ical-001.sh @@ -0,0 +1,28 @@ +#!/bin/sh + +. "${TEST_INIT:-./test-init.sh}" + +if [ "$1" = 'actual' ]; then + mkdir .calcurse || exit 1 + cp "$DATA_DIR/conf" .calcurse || exit 1 + "$CALCURSE" -D "$PWD/.calcurse" -i "$DATA_DIR/ical-001.ical" + "$CALCURSE" -D "$PWD/.calcurse" -s01/01/1902 -r2 + "$CALCURSE" -D "$PWD/.calcurse" -t + rm -rf .calcurse || exit 1 +elif [ "$1" = 'expected' ]; then + cat <<EOD +Import process report: 0017 lines read +1 app / 0 events / 1 todo / 0 skipped +01/01/02: + - 00:01 -> ..:.. + Calibrator's + +01/02/02: + - ..:.. -> 09:18 + Calibrator's +to do: +9. Nary parabled Louvre's fleetest mered +EOD +else + ./run-test "$0" +fi diff --git a/test/ical-002.sh b/test/ical-002.sh new file mode 100755 index 0000000..fabde90 --- /dev/null +++ b/test/ical-002.sh @@ -0,0 +1,31 @@ +#!/bin/sh + +. "${TEST_INIT:-./test-init.sh}" + +if [ "$1" = 'actual' ]; then + mkdir .calcurse || exit 1 + cp "$DATA_DIR/conf" .calcurse || exit 1 + "$CALCURSE" -D "$PWD/.calcurse" -i "$DATA_DIR/ical-002.ical" + "$CALCURSE" -D "$PWD/.calcurse" -s01/01/2000 -r2 + rm -rf .calcurse || exit 1 +elif [ "$1" = 'expected' ]; then + cat <<EOD +Import process report: 0036 lines read +5 apps / 0 events / 0 todos / 0 skipped +01/01/00: + - 00:00 -> 00:00 + One day + - 00:00 -> ..:.. + One day, one hour, one minute and one second + - 00:00 -> 01:01 + One hour, one minute and one second + - 00:00 -> 00:01 + One minute and one second + +01/02/00: + - ..:.. -> 01:01 + One day, one hour, one minute and one second +EOD +else + ./run-test "$0" +fi diff --git a/test/ical-003.sh b/test/ical-003.sh new file mode 100755 index 0000000..244a6d5 --- /dev/null +++ b/test/ical-003.sh @@ -0,0 +1,137 @@ +#!/bin/sh + +. "${TEST_INIT:-./test-init.sh}" + +if [ "$1" = 'actual' ]; then + mkdir .calcurse || exit 1 + cp "$DATA_DIR/conf" .calcurse || exit 1 + "$CALCURSE" -D "$PWD/.calcurse" -i "$DATA_DIR/ical-003.ical" + "$CALCURSE" -D "$PWD/.calcurse" -s01/01/2000 -r365 + rm -rf .calcurse || exit 1 +elif [ "$1" = 'expected' ]; then + cat <<EOD +Import process report: 0031 lines read +3 apps / 0 events / 0 todos / 0 skipped +01/01/00: + - 00:00 -> 01:30 + Recurring appointment + - 00:00 -> 01:30 + Weekly appointment + +01/03/00: + - 00:00 -> 01:30 + Recurring appointment + +01/05/00: + - 00:00 -> 01:30 + Recurring appointment + +01/07/00: + - 00:00 -> 01:30 + Recurring appointment + +01/08/00: + - 00:00 -> 01:30 + Weekly appointment + +01/09/00: + - 00:00 -> 01:30 + Recurring appointment + +01/11/00: + - 00:00 -> 01:30 + Recurring appointment + +01/13/00: + - 00:00 -> 01:30 + Recurring appointment + +01/15/00: + - 00:00 -> 01:30 + Weekly appointment + +01/17/00: + - 00:00 -> 01:30 + Recurring appointment + +01/19/00: + - 00:00 -> 01:30 + Recurring appointment + +01/21/00: + - 00:00 -> 01:30 + Recurring appointment + +01/25/00: + - 00:00 -> 01:30 + Recurring appointment + +01/27/00: + - 00:00 -> 01:30 + Recurring appointment + +01/29/00: + - 00:00 -> 01:30 + Recurring appointment + - 00:00 -> 01:30 + Weekly appointment + +01/31/00: + - 00:00 -> 01:30 + Recurring appointment + +02/01/00: + - 00:00 -> 01:30 + Recurring appointment + +02/03/00: + - 00:00 -> 01:30 + Recurring appointment + +02/05/00: + - 00:00 -> 01:30 + Recurring appointment + +02/07/00: + - 00:00 -> 01:30 + Recurring appointment + +02/09/00: + - 00:00 -> 01:30 + Recurring appointment + +02/11/00: + - 00:00 -> 01:30 + Recurring appointment + +02/13/00: + - 00:00 -> 01:30 + Recurring appointment + +02/17/00: + - 00:00 -> 01:30 + Recurring appointment + +02/19/00: + - 00:00 -> 01:30 + Recurring appointment + +02/21/00: + - 00:00 -> 01:30 + Recurring appointment + +02/25/00: + - 00:00 -> 01:30 + Recurring appointment + +02/27/00: + - 00:00 -> 01:30 + Recurring appointment + +02/29/00: + - 00:00 -> 01:30 + Recurring appointment +EOD +else + ./run-test "$0" +fi |