Carp/test/string.carp
2018-01-02 18:13:52 +01:00

85 lines
2.2 KiB
Plaintext

(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
"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
(starts-with? "heller" "hell")
"starts-with? works as expected"
)
(print-test-results test)
))