diff options
author | Hugo Hörnquist <hugo@lysator.liu.se> | 2022-03-07 15:31:00 +0100 |
---|---|---|
committer | Hugo Hörnquist <hugo@lysator.liu.se> | 2022-03-07 20:29:14 +0100 |
commit | f7716ac1a87649cad96242f2d5bf0a987d7f430c (patch) | |
tree | b4b84951ef468fd644c42e9e0fee535d879f0387 /tests/rrule-serialization.scm | |
parent | Cleanup in (hnh util path). (diff) | |
download | calp-f7716ac1a87649cad96242f2d5bf0a987d7f430c.tar.gz calp-f7716ac1a87649cad96242f2d5bf0a987d7f430c.tar.xz |
Add new tests.
Diffstat (limited to 'tests/rrule-serialization.scm')
-rw-r--r-- | tests/rrule-serialization.scm | 76 |
1 files changed, 0 insertions, 76 deletions
diff --git a/tests/rrule-serialization.scm b/tests/rrule-serialization.scm deleted file mode 100644 index 53365661..00000000 --- a/tests/rrule-serialization.scm +++ /dev/null @@ -1,76 +0,0 @@ -( - ;; Yes, this is ugly. But how else would I test a private procedure? - ((guile) @@) - - ((vcomponent recurrence internal) - recur-rule->rrule-string - recur-rule->rrule-sxml - byday - ) - - ((vcomponent recurrence parse) parse-recurrence-rule) - - ((ice-9 peg) - keyword-flatten - ) - ) - - -(test-equal - "Parse of week day" - '(#f . 3) - ((@@ (vcomponent recurrence parse) parse-day-spec) "WE")) - -(test-equal - "Parse of week day with positive offset" - '(1 . 3) - ((@@ (vcomponent recurrence parse) parse-day-spec) "1WE")) - -(test-equal - "Parse of week day with positive offset (and plus)" - '(2 . 3) - ((@@ (vcomponent recurrence parse) parse-day-spec) "+2WE")) - -(test-equal - "Parse of week day with negative offset" - '(-3 . 3) - ((@@ (vcomponent recurrence parse) parse-day-spec) "-3WE")) - - -;; numeric prefixes in the BYDAY list is only valid when -;; FREQ={MONTHLY,YEARLY}, but that should be handled in a -;; later stage since we are just testing the parser here. -;; (p. 41) - - -(define field->string - (@@ (vcomponent recurrence internal) field->string)) - - -(let ((rule (parse-recurrence-rule "BYDAY=MO,TU,WE"))) - (test-equal "Direct return of parsed value" - "MO,TU,WE" - (field->string 'byday (byday rule))) - - (test-equal "Direct return, but as SXML" - '((byday "MO") - (byday "TU") - (byday "WE")) - (filter (lambda (pair) - (eq? 'byday (car pair))) - (keyword-flatten '(interval byday wkst) - (recur-rule->rrule-sxml rule))))) - -(let ((rule (parse-recurrence-rule "BYDAY=+1MO,1TU,-2FR"))) - (test-equal "Direct return of parsed value" - "1MO,1TU,-2FR" - (field->string 'byday (byday rule))) - - (test-equal "Direct return, but as SXML" - '((byday "1MO") - (byday "1TU") - (byday "-2FR")) - (filter (lambda (pair) - (eq? 'byday (car pair))) - (keyword-flatten '(interval byday wkst) - (recur-rule->rrule-sxml rule))))) |