diff --git a/member2-parser.scm b/member2-parser.scm index 2062d7e..1c48378 100644 --- a/member2-parser.scm +++ b/member2-parser.scm @@ -36,7 +36,8 @@ (chicken base) (chicken io) (chicken irregex) - member2-record) + member2-record + testing) ;; Removes any comments and removes any leading and trailing ;; whitespace. @@ -95,13 +96,28 @@ (let* ((mrif (member-record-input-file mr)) (source (read-lines mrif)) (mrp (parse-member-lines mr source))) - #f)) + mrp)) (define (member-parser-tests!) - #f) + (run-tests + member-parser + (test-equal? preprocess-member-line + (preprocess-member-line "# all comment") + "") + (test-equal? preprocess-member-line + (preprocess-member-line " # all comment after spaces") + "") + (test-equal? preprocess-member-line + (preprocess-member-line " test # spaces and comment after spaces") + "test") + (test-equal? preprocess-member-line + (preprocess-member-line "key value # spaces and comment after spaces") + "key value") + )) ) (import member2-parser) (member-parser-tests!) +(print (parse-member-file (make-member-record "joe" "members/joe" '())))