mirror of
https://github.com/carp-lang/Carp.git
synced 2024-10-11 20:49:05 +03:00
95 lines
2.5 KiB
Plaintext
95 lines
2.5 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
|
|
"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)
|
|
))
|