Test cases for impossible dates in recurrence rule

Signed-off-by: Lars Henriksen <LarsHenriksen@get2net.dk>
Signed-off-by: Lukas Fleischer <lfleischer@calcurse.org>
This commit is contained in:
Lars Henriksen 2019-04-28 00:20:37 +02:00 committed by Lukas Fleischer
parent 2be32c4bda
commit 52d52208c8
3 changed files with 54 additions and 1 deletions

View File

@ -60,7 +60,8 @@ TESTS = \
recur-002.sh \
recur-003.sh \
recur-004.sh \
recur-005.sh
recur-005.sh \
recur-006.sh
TESTS_ENVIRONMENT = \
TEST_INIT='$(top_srcdir)/test/test-init.sh' \

View File

@ -10,3 +10,5 @@
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
05/31/2019 @ 07:25 -> 05/31/2019 @ 07:45 {1M} |Ignore impossible dates
02/29/2020 [1] {1Y} Every 29 February since 2020

50
test/recur-006.sh Executable file
View File

@ -0,0 +1,50 @@
#!/bin/sh
# Ignore impossible dates.
. "${TEST_INIT:-./test-init.sh}"
if [ "$1" = 'actual' ]; then
"$CALCURSE" --read-only -D "$DATA_DIR"/ -c "$DATA_DIR/apts-recur" \
--startday=5/31/2019 --range=365 --filter-type recur-apt \
--filter-pattern impossible
"$CALCURSE" --read-only -D "$DATA_DIR"/ -c "$DATA_DIR/apts-recur" \
--startday=2/1/2020 --range=1500 --filter-type recur-event \
--filter-pattern February
elif [ "$1" = 'expected' ]; then
cat <<EOD
05/31/19:
- 07:25 -> 07:45
Ignore impossible dates
07/31/19:
- 07:25 -> 07:45
Ignore impossible dates
08/31/19:
- 07:25 -> 07:45
Ignore impossible dates
10/31/19:
- 07:25 -> 07:45
Ignore impossible dates
12/31/19:
- 07:25 -> 07:45
Ignore impossible dates
01/31/20:
- 07:25 -> 07:45
Ignore impossible dates
03/31/20:
- 07:25 -> 07:45
Ignore impossible dates
02/29/20:
* Every 29 February since 2020
02/29/24:
* Every 29 February since 2020
EOD
else
./run-test "$0"
fi