From 8ebf39d58456ef5f658e5d91c24d5ca59156a298 Mon Sep 17 00:00:00 2001 From: Justin Ethier Date: Tue, 28 Jul 2015 21:29:55 -0400 Subject: [PATCH] Added unit tests --- tests/unit-tests.scm | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/tests/unit-tests.scm b/tests/unit-tests.scm index dd78d48e..4ee7f1af 100644 --- a/tests/unit-tests.scm +++ b/tests/unit-tests.scm @@ -142,6 +142,12 @@ (assert:equal "strings" d "(\"abc\")") ;; Test GC (set! a "hello 2") (assert:equal "strings" a "hello 2") +(define (f) (make-string 3 #\*)) +(define (g) "***") +(assert:equal "string-set!" (string-set! (f) 0 #\?) "?**") +(define a "12345") +(define b (string-copy "abcde")) +(assert:equal "string-copy!" (string-copy! b 1 a 0 2) "a12de") ;; Recursion example: (letrec ((fnc (lambda (i) @@ -245,6 +251,8 @@ ;; Vectors +(assert:equal "vector-ref" (vector-ref #(1 1 2 3 5 8 13 21) 5) 8) +(assert:equal "vector-set!" (vector-set! #(0 '(2 2 2 2) "anna") 1 "test") #(0 "test" "anna")) (assert:equal "vector->list" (vector->list #(dah dah didah)) '(dah dah didah)) ;(vector->list .#(dah dah didah) 1 2)