diff options
Diffstat (limited to 'test')
-rw-r--r-- | test/Makefile.am | 8 | ||||
-rwxr-xr-x | test/bug-002.sh | 16 | ||||
-rw-r--r-- | test/data/apts | 141 | ||||
-rw-r--r-- | test/data/apts-bug-002 | 2 | ||||
-rw-r--r-- | test/data/apts-recur | 12 | ||||
-rwxr-xr-x | test/recur-001.sh | 50 | ||||
-rwxr-xr-x | test/recur-002.sh | 14 | ||||
-rwxr-xr-x | test/recur-003.sh | 17 | ||||
-rwxr-xr-x | test/recur-004.sh | 18 | ||||
-rwxr-xr-x | test/recur-005.sh | 18 | ||||
-rw-r--r-- | test/run-test.c | 3 |
11 files changed, 298 insertions, 1 deletions
diff --git a/test/Makefile.am b/test/Makefile.am index 85c8a1d..76a40fb 100644 --- a/test/Makefile.am +++ b/test/Makefile.am @@ -15,7 +15,13 @@ TESTS = \ range-003.sh \ appointment-001.sh \ next-001.sh \ - search-001.sh + search-001.sh \ + bug-002.sh \ + recur-001.sh \ + recur-002.sh \ + recur-003.sh \ + recur-004.sh \ + recur-005.sh TESTS_ENVIRONMENT = \ CALCURSE='$(top_builddir)/src/calcurse' \ diff --git a/test/bug-002.sh b/test/bug-002.sh new file mode 100755 index 0000000..4784b59 --- /dev/null +++ b/test/bug-002.sh @@ -0,0 +1,16 @@ +#!/bin/sh + +if [ "$1" = 'actual' ]; then + "$CALCURSE" --read-only -D "$DATA_DIR"/ -c "$DATA_DIR/apts-bug-002" \ + -d05/03/2012 +elif [ "$1" = 'expected' ]; then + cat <<EOD +05/03/12: + - 10:45 -> 12:45 + Quantum Mechanics + - 18:30 -> 21:30 + German Class +EOD +else + ./run-test "$0" +fi diff --git a/test/data/apts b/test/data/apts index 33de89b..c21bf24 100644 --- a/test/data/apts +++ b/test/data/apts @@ -658,3 +658,144 @@ 04/27/2032 [1] Cringing Osborne 05/26/2032 [1] Confine lames 08/03/2032 [1] Ceremonial straw's antelope's Mercer Kathiawar's +01/01/1902 [1] Swastikas seeking +01/01/1902 [1] Elongate wallpaper's midterms classify +01/01/1902 [1] Seedy locoweed persecutor +01/01/1902 [1] Acidifies flack's evaporating +01/01/1902 [1] Aniakchak Pantagruel +01/01/1902 [1] Imperishables +01/01/1902 [1] Stuff hysteresis +01/01/1902 [1] Area +01/01/1902 [1] Brandished eyrie cloying emcees +01/01/1902 [1] Exceptionable +01/01/1902 [1] Acanthi kinked hardtack's mumps +01/01/1902 [1] Cesspool's murdered cod's Washingtonians +01/01/1902 [1] Snow +01/01/1902 [1] Kibitz subcontinent hogwash's displaying quarto +01/01/1902 [1] Mischievousness's species adultery's petrochemicals Remus +01/01/1902 [1] Insecure Taiyuan Chungking's Tm's +01/01/1902 [1] Minuscules pompadours fourfold incognito +01/01/1902 [1] Geography's Delaney's +01/01/1902 [1] Skilled bastardized dormers Buckingham munitions +01/01/1902 [1] Also +01/01/1902 [1] Marquis's +01/01/1902 [1] Malamud's +01/01/1902 [1] Gilda +01/01/1902 [1] Roe's apace disinfectants metered spinals +01/01/1902 [1] Locals goutiest Gomulka's +01/01/1902 [1] Surgery's apple covertly +01/01/1902 [1] Shantung Earlene pillage leer complainant's +01/01/1902 [1] Bach's +01/01/1902 [1] Luisa's Chimborazo's shuffleboard's +01/01/1902 [1] Tiffed Garcia Elton's +01/01/1902 [1] Peculiarities Jewishnesses attenuate +01/01/1902 [1] Wallpapered tampers Dhaka transgression's alohas +01/01/1902 [1] Roam psycho's +01/01/1902 [1] Automobiles beguiles +01/01/1902 [1] Dumfounds medial lark's +01/01/1902 [1] Haggler's ablative safeguard +01/01/1902 [1] Broomsticks +01/01/1902 [1] Therapist cooker's flutes He's +01/01/1902 [1] Bonny strode Pasteur's inconsequentially Gamble's +01/01/1902 [1] Corporate +01/01/1902 [1] Lina's +01/01/1902 [1] Kodachrome wicks callus's Genaro's +01/01/1902 [1] Brokers horsefly repudiating knob +01/01/1902 [1] Reflecting championing stringent Talmudic +01/01/1902 [1] Noncommercial employes +01/01/1902 [1] Competitively +01/01/1902 [1] Garish duplicator edible battery's mock +01/01/1902 [1] Flocks subornation's trawlers naming's +01/01/1902 [1] Gruffness Gethsemane +01/01/1902 [1] Absalom humankind editorship +01/01/1902 [1] Ampule's Orinoco's nontransferable misspends +01/01/1902 [1] Each Moselle's discussants flashlight's +01/01/1902 [1] Electron's reproaches picker grayer +01/01/1902 [1] Armrests Jamestown's nuke's motif undertaker +01/01/1902 [1] Navigation's +01/01/1902 [1] Pearl's Morin telescopes Emanuel's +01/01/1902 [1] Mutating postnatal Tate familiarize discomfort +01/01/1902 [1] Offsets debits +01/01/1902 [1] Institutes's Canton susceptibility's hankie's +01/01/1902 [1] Haleakala's Goldie's Set +01/01/1902 [1] Hypocrite's bridal populars +01/01/1902 [1] Lankiness +01/01/1902 [1] Rinds weekdays +01/01/1902 [1] Win hydrangea's display pelvic yukking +01/01/1902 [1] Homer's strafes +01/01/1902 [1] Rigor's sociopaths bashing outwore catalepsy +01/01/1902 [1] Montaigne loophole +01/01/1902 @ 00:01 -> 01/02/1902 @ 09:18 |Calibrator's +01/01/1902 @ 05:03 -> 01/06/1902 @ 02:46 |Refresh prepackaged wieners +01/01/1902 @ 01:58 -> 01/06/1902 @ 07:39 |Strontium's +01/01/1902 @ 06:11 -> 01/01/1902 @ 10:15 |Abets reject pullbacks finaglers unroll +01/01/1902 @ 02:55 -> 01/01/1902 @ 17:43 |Monterrey apprehensive Lonnie's +01/01/1902 @ 03:19 -> 01/03/1902 @ 16:25 |Gill machination geranium's fathomless extraordinary +01/01/1902 @ 06:15 -> 01/02/1902 @ 06:07 |Protruded vanguard +01/01/1902 @ 02:31 -> 01/01/1902 @ 13:18 |Expo +01/01/1902 @ 06:11 -> 01/05/1902 @ 10:50 |Placebos hugeness flailing ironing's +01/01/1902 @ 07:40 -> 01/02/1902 @ 23:52 |Septembers astuter Jarvis caliper +01/01/1902 @ 06:51 -> 01/05/1902 @ 07:33 |Asthma +01/01/1902 @ 09:01 -> 01/04/1902 @ 14:26 |Monograph's +01/01/1902 @ 00:37 -> 01/01/1902 @ 00:53 |Portal's Leach's Sara Asiatic Holly +01/01/1902 @ 02:05 -> 01/02/1902 @ 00:41 |Yesteryear's +01/01/1902 @ 06:52 -> 01/05/1902 @ 13:44 |Colluding steamrolled +01/01/1902 @ 06:28 -> 01/06/1902 @ 07:57 |Incubuses flat prison Ryukyu's +01/01/1902 @ 06:04 -> 01/02/1902 @ 09:50 |Synods +01/01/1902 @ 05:17 -> 01/01/1902 @ 20:13 |Eucalyptus's Araby +01/01/1902 @ 04:12 -> 01/02/1902 @ 11:28 |Superstitious +01/01/1902 @ 03:07 -> 01/02/1902 @ 14:53 |Chanted pumice's scalding prier +01/01/1902 @ 01:26 -> 01/05/1902 @ 11:35 |Beethoven materialism signposting bucktoothed +01/01/1902 @ 05:31 -> 01/02/1902 @ 11:34 |Isolated affair ritual's Hanukkahs Riel +01/01/1902 @ 03:26 -> 01/02/1902 @ 15:16 |Supernumeraries incontrovertibly embolden iterate +01/01/1902 @ 07:17 -> 01/05/1902 @ 00:07 |Federals spanner +01/01/1902 @ 07:02 -> 01/03/1902 @ 22:41 |Unzipped earthing alleyways bankers +01/01/1902 @ 08:24 -> 01/03/1902 @ 20:18 |Diesel ferrules Valkyrie's +01/01/1902 @ 03:32 -> 01/01/1902 @ 04:06 |Winch +01/01/1902 @ 09:01 -> 01/04/1902 @ 09:21 |Smartens promulgates uncharted McIntosh's +01/01/1902 @ 00:59 -> 01/05/1902 @ 04:39 |Ho Nikolayev succumbing observances +01/01/1902 @ 07:03 -> 01/02/1902 @ 11:52 |Kiwanis's Iceland +01/01/1902 @ 08:13 -> 01/03/1902 @ 07:30 |Bawdily anviled crayfishes neuters +01/01/1902 @ 01:46 -> 01/01/1902 @ 18:09 |Blenheim +01/01/1902 @ 01:02 -> 01/04/1902 @ 12:06 |Posse overspreads psalm lamebrain's primps +01/01/1902 @ 02:16 -> 01/04/1902 @ 13:18 |Sass organism's horses Melanesian +01/01/1902 @ 09:01 -> 01/03/1902 @ 04:00 |Commons's +01/01/1902 @ 06:16 -> 01/05/1902 @ 05:33 |Bungle head radiation's +01/01/1902 @ 03:31 -> 01/03/1902 @ 05:20 |Psycho's +01/01/1902 @ 06:58 -> 01/03/1902 @ 02:04 |Nomadic Gewürztraminer overrules +01/01/1902 @ 07:25 -> 01/02/1902 @ 11:22 |Crematory amorphousness +01/01/1902 @ 08:18 -> 01/04/1902 @ 11:42 |Charity's +01/01/1902 @ 05:19 -> 01/04/1902 @ 22:02 |Fronde petrochemical's capitalistic +01/01/1902 @ 02:09 -> 01/02/1902 @ 14:02 |Concurs windowed +01/01/1902 @ 03:20 -> 01/03/1902 @ 10:01 |Condillac +01/01/1902 @ 04:28 -> 01/02/1902 @ 09:33 |Carrie cued melodramatics +01/01/1902 @ 06:55 -> 01/02/1902 @ 03:06 |Ferocity +01/01/1902 @ 08:42 -> 01/01/1902 @ 20:57 |Simenon Kojak amening plagiarist +01/01/1902 @ 08:30 -> 01/05/1902 @ 02:27 |Marshall +01/01/1902 @ 05:38 -> 01/03/1902 @ 22:47 |Hokkaido's diseases +01/01/1902 @ 07:21 -> 01/02/1902 @ 04:40 |Senility's +01/01/1902 @ 03:29 -> 01/03/1902 @ 23:54 |Albumin altimeters Senghor's +01/01/1902 @ 04:46 -> 01/03/1902 @ 12:02 |Lynnette Zane kimono's backlash +01/01/1902 @ 05:32 -> 01/04/1902 @ 23:07 |Interfaced Hepplewhite slipped +01/01/1902 @ 07:28 -> 01/02/1902 @ 19:34 |Discretion bauble varsity's +01/01/1902 @ 06:18 -> 01/05/1902 @ 02:47 |Damned +01/01/1902 @ 01:43 -> 01/04/1902 @ 22:12 |Doting +01/01/1902 @ 03:23 -> 01/03/1902 @ 12:31 |Access Yang bethinks vectored broad +01/01/1902 @ 02:50 -> 01/03/1902 @ 20:32 |Tasseled +01/01/1902 @ 06:52 -> 01/03/1902 @ 10:06 |Ventriloquist's indisputable squats Fenian's slowdown's +01/01/1902 @ 06:31 -> 01/04/1902 @ 21:25 |Learning +01/01/1902 @ 00:44 -> 01/01/1902 @ 14:29 |Blondes Sasquatch cablecasted +01/01/1902 @ 06:16 -> 01/04/1902 @ 20:13 |Papillae hairpin ailerons +01/01/1902 @ 00:22 -> 01/02/1902 @ 11:54 |Menses enrichment afloat failed incorruptible +01/01/1902 @ 08:13 -> 01/01/1902 @ 17:50 |Motown's factors disappearing +01/01/1902 @ 08:40 -> 01/06/1902 @ 04:00 |Observable parleys industrialization Cambrian boxwood's +01/01/1902 @ 04:56 -> 01/03/1902 @ 00:14 |Summer Mujib humbles fatherless foretelling +01/01/1902 @ 00:08 -> 01/02/1902 @ 20:46 |Binnacles +01/01/1902 @ 04:38 -> 01/03/1902 @ 00:50 |Packard's +01/01/1902 @ 08:49 -> 01/03/1902 @ 12:10 |Hypnotist reappraisal rehiring Castaneda +01/01/1902 @ 02:26 -> 01/06/1902 @ 03:30 |Jataka backwards +01/01/1902 @ 00:07 -> 01/05/1902 @ 01:15 |Zeno Goldberg's Iberia's truants coiffured +01/01/1902 @ 00:59 -> 01/04/1902 @ 19:16 |Lounges +01/01/1902 @ 00:05 -> 01/03/1902 @ 13:11 |Heisenberg Jewries hookier misfortunes auspiciousness +01/01/1902 @ 08:02 -> 01/01/1902 @ 11:59 |District +01/01/1902 @ 02:54 -> 01/05/1902 @ 06:18 |Grin menstruation's diff --git a/test/data/apts-bug-002 b/test/data/apts-bug-002 new file mode 100644 index 0000000..6ced520 --- /dev/null +++ b/test/data/apts-bug-002 @@ -0,0 +1,2 @@ +03/22/2012 @ 18:30 -> 03/22/2012 @ 21:30 {1W -> 06/21/2012} |German Class +04/19/2012 @ 10:45 -> 04/19/2012 @ 12:45 {1W -> 05/06/2012} |Quantum Mechanics diff --git a/test/data/apts-recur b/test/data/apts-recur new file mode 100644 index 0000000..0fdfe3e --- /dev/null +++ b/test/data/apts-recur @@ -0,0 +1,12 @@ +01/01/2000 [1] {1D} Each day since 2000-01-01 +01/01/2000 [1] {1W} Each Saturday since 2000-01-01 +01/01/2000 [1] {1M} Each first day of the month since 2000-01-01 +01/01/2000 [1] {1Y} Every year on January, 1st since year 2000 +01/01/2000 [1] {2D} Every second day since 2000-01-01 +01/01/2000 [1] {4W} Every 28 days since 2000-01-01 +01/01/2000 [1] {7D} Same as "01/01/2000 [1] {1W}" +01/01/2000 [1] {3D -> 12/31/2000} Every three days in year 2000 +01/01/2000 [1] {3D !01/04/2000} Every three days, but not on 2000-01-04 +01/01/2000 @ 16:00 -> 01/02/2000 @ 02:00 {2D} |Recurrent appointment +01/01/2000 @ 00:00 -> 01/07/2000 @ 00:00 {1W} |Another recurrent appointment +01/01/2000 @ 00:00 -> 01/07/2000 @ 00:00 {1D} |Third recurrent appointment diff --git a/test/recur-001.sh b/test/recur-001.sh new file mode 100755 index 0000000..307c174 --- /dev/null +++ b/test/recur-001.sh @@ -0,0 +1,50 @@ +#!/bin/sh + +if [ "$1" = 'actual' ]; then + "$CALCURSE" --read-only -D "$DATA_DIR"/ -c "$DATA_DIR/apts-recur" \ + -s01/01/2000 -r8 --format-recur-apt='' +elif [ "$1" = 'expected' ]; then + cat <<EOD +01/01/00: + * Each day since 2000-01-01 + * Each Saturday since 2000-01-01 + * Each first day of the month since 2000-01-01 + * Every year on January, 1st since year 2000 + * Every second day since 2000-01-01 + * Every 28 days since 2000-01-01 + * Same as "01/01/2000 [1] {1W}" + * Every three days in year 2000 + * Every three days, but not on 2000-01-04 + +01/02/00: + * Each day since 2000-01-01 + +01/03/00: + * Each day since 2000-01-01 + * Every second day since 2000-01-01 + +01/04/00: + * Each day since 2000-01-01 + * Every three days in year 2000 + +01/05/00: + * Each day since 2000-01-01 + * Every second day since 2000-01-01 + +01/06/00: + * Each day since 2000-01-01 + +01/07/00: + * Each day since 2000-01-01 + * Every second day since 2000-01-01 + * Every three days in year 2000 + * Every three days, but not on 2000-01-04 + +01/08/00: + * Each day since 2000-01-01 + * Each Saturday since 2000-01-01 + * Same as "01/01/2000 [1] {1W}" +EOD +else + ./run-test "$0" +fi diff --git a/test/recur-002.sh b/test/recur-002.sh new file mode 100755 index 0000000..d302971 --- /dev/null +++ b/test/recur-002.sh @@ -0,0 +1,14 @@ +#!/bin/sh + +if [ "$1" = 'actual' ]; then + "$CALCURSE" --read-only -D "$DATA_DIR"/ -c "$DATA_DIR/apts-recur" \ + -d02/01/2000 --format-recur-apt='' +elif [ "$1" = 'expected' ]; then + cat <<EOD +02/01/00: + * Each day since 2000-01-01 + * Each first day of the month since 2000-01-01 +EOD +else + ./run-test "$0" +fi diff --git a/test/recur-003.sh b/test/recur-003.sh new file mode 100755 index 0000000..fadaea0 --- /dev/null +++ b/test/recur-003.sh @@ -0,0 +1,17 @@ +#!/bin/sh + +if [ "$1" = 'actual' ]; then + "$CALCURSE" --read-only -D "$DATA_DIR"/ -c "$DATA_DIR/apts-recur" \ + -d01/01/2001 --format-recur-apt='' +elif [ "$1" = 'expected' ]; then + cat <<EOD +01/01/01: + * Each day since 2000-01-01 + * Each first day of the month since 2000-01-01 + * Every year on January, 1st since year 2000 + * Every second day since 2000-01-01 + * Every three days, but not on 2000-01-04 +EOD +else + ./run-test "$0" +fi diff --git a/test/recur-004.sh b/test/recur-004.sh new file mode 100755 index 0000000..39ea193 --- /dev/null +++ b/test/recur-004.sh @@ -0,0 +1,18 @@ +#!/bin/sh + +if [ "$1" = 'actual' ]; then + "$CALCURSE" --read-only -D "$DATA_DIR"/ -c "$DATA_DIR/apts-recur" \ + -d01/01/2000 --format-recur-event='' +elif [ "$1" = 'expected' ]; then + cat <<EOD +01/01/00: + - 00:00 -> ..:.. + Another recurrent appointment + - 00:00 -> ..:.. + Third recurrent appointment + - 16:00 -> ..:.. + Recurrent appointment +EOD +else + ./run-test "$0" +fi diff --git a/test/recur-005.sh b/test/recur-005.sh new file mode 100755 index 0000000..6f9d4c3 --- /dev/null +++ b/test/recur-005.sh @@ -0,0 +1,18 @@ +#!/bin/sh + +if [ "$1" = 'actual' ]; then + "$CALCURSE" --read-only -D "$DATA_DIR"/ -c "$DATA_DIR/apts-recur" \ + -d01/10/2000 --format-recur-event='' +elif [ "$1" = 'expected' ]; then + cat <<EOD +01/10/00: + - ..:.. -> ..:.. + Another recurrent appointment + - ..:.. -> 02:00 + Recurrent appointment + - 00:00 -> ..:.. + Third recurrent appointment +EOD +else + ./run-test "$0" +fi diff --git a/test/run-test.c b/test/run-test.c index c779be7..fb5bcb4 100644 --- a/test/run-test.c +++ b/test/run-test.c @@ -183,6 +183,9 @@ static int run_test(const char *name, int expect_failure) } } + if (fgets(buf2, BUFSIZ, fpin2)) + ret = 0; + if (fpin1) fclose(fpin1); if (fpin2) |