1 #!/usr/bin/env -S guile -s
4 (add-to-load-path "..")
5 (use-modules (srfi srfi-1))
6 (use-modules (srfi srfi-9))
7 (use-modules (srfi srfi-9 gnu))
8 (use-modules (srfi srfi-64))
10 (use-modules (rnrs bytevectors))
12 (define (test-payload test payload)
13 (format #t "--Testing ~s: Payload ~a~%" test payload)
15 (case (string->symbol test)
21 (test-begin "rpc-apply-scatter-serialization-tests")
27 (define r (car (rpc-apply-scatter test-payload '("integer") `(,actual))))
29 (test-assert "integer test" (equal? r actual))
31 ;; floadint point test
33 (set! actual 3.14159265358979323846)
35 (set! r (car (rpc-apply-scatter test-payload '("float") `(,actual))))
37 (test-assert "float test" (equal? r actual))
39 ;; rational number test
43 (set! r (car (rpc-apply-scatter test-payload '("rational") `(,actual))))
45 (test-assert "rational test" (equal? r actual))
51 (set! r (car (rpc-apply-scatter test-payload '("boolean") `(,actual))))
53 (test-assert "boolean test" (equal? r actual))
57 (set! actual '(1 . 2))
59 (set! r (car (rpc-apply-scatter test-payload '("pair") `(,actual))))
61 (test-assert "pair test" (equal? r actual))
65 (set! actual '(1 2 3))
67 (set! r (car (rpc-apply-scatter test-payload '("list") `(,actual))))
69 (test-assert "list test" (equal? r actual))
75 (set! r (car (rpc-apply-scatter test-payload '("null") `(,actual))))
77 (test-assert "null test" (equal? r actual))
81 (set! actual '((1 2 3)))
83 (set! r (car (rpc-apply-scatter test-payload '("listinlist") `(,actual))))
85 (test-assert "listlist test" (equal? r actual))
89 (set! actual #(1 2 3))
91 (set! r (car (rpc-apply-scatter test-payload '("vector") `(,actual))))
93 (test-assert "vector test" (equal? r actual))
97 (set! actual #(1 2 3))
99 (set! r (car (rpc-apply-scatter test-payload '("vector") `(,actual))))
101 (test-assert "vector test" (equal? r actual))
105 (set! actual #2((1 2 3) (4 5 6)))
107 (set! r (car (rpc-apply-scatter test-payload '("array") `(,actual))))
109 (test-assert "array test" (equal? r actual))
113 (set! actual #vu8(1 2 3))
115 (set! r (car (rpc-apply-scatter test-payload '("bytevector") `(,actual))))
117 (test-assert "bytevector test" (equal? r actual))
121 (set! actual '((foo . 1) (bar . 2)))
123 (set! r (car (rpc-apply-scatter test-payload '("alist") `(,actual))))
125 (test-assert "alist test" (equal? r actual))
127 (test-end "rpc-apply-scatter-serialization-tests")