From f7716ac1a87649cad96242f2d5bf0a987d7f430c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Hugo=20H=C3=B6rnquist?= Date: Mon, 7 Mar 2022 15:31:00 +0100 Subject: Add new tests. --- tests/rrule-serialization.scm | 76 ------------------------------------------- 1 file changed, 76 deletions(-) delete mode 100644 tests/rrule-serialization.scm (limited to 'tests/rrule-serialization.scm') 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))))) -- cgit v1.2.3