(use String) (load "Test.carp") (use Test) (defn main [] (with-test test (assert-equal test \s (char-at "lisp" 2) "char-at works as expected" ) (assert-equal test \s (head "silk") "head works as expected" ) (assert-equal test "ilk" &(tail "silk") "tail works as expected" ) (assert-equal test "sshello" &(pad-left 7 \s "hello") "pad-left works as expected" ) (assert-equal test "helloss" &(pad-right 7 \s "hello") "pad-right works as expected" ) (assert-equal test 5 (count-char "lisssssp" \s) "count-char works as expected" ) (assert-equal test "olleh" &(reverse "hello") "reverse works as expected" ) (assert-equal test false (empty? "lisp") "empty? returns false on non-empty string" ) (assert-equal test true (empty? "") "empty? returns true on empty string" ) (assert-equal test &[\e \r \i \k] &(chars "erik") "chars works as expected" ) (assert-equal test "erik" &(from-chars [\e \r \i \k]) "from-chars works as expected" ) (assert-equal test "edan" &(substring "svedang" 2 6) "substring works as expected" ) (assert-equal test "sved" &(prefix-string "svedang" 4) "prefix-string works as expected" ) (assert-equal test "dang" &(suffix-string "svedang" 3) "suffix-string works as expected" ) (assert-equal test true (ends-with? "heller" "ler") "ends-with? works as expected" ) (assert-equal test true (ends-with? "ller" "ler") "ends-with? works (regression test for #157)" ) (assert-equal test true (starts-with? "heller" "hell") "starts-with? works as expected" ) (print-test-results test) ))