ttests.lisp - clic - Clic is an command line interactive client for gopher written in Common LISP
(HTM) git clone git://bitreich.org/clic/ git://hg6vgqziawt5s4dj.onion/clic/
(DIR) Log
(DIR) Files
(DIR) Refs
(DIR) Tags
(DIR) LICENSE
---
ttests.lisp (1408B)
---
1 ;;;; -*- Mode: Lisp; indent-tabs-mode: nil -*-
2
3 (defpackage :split-sequence/tests
4 (:use :common-lisp :split-sequence :fiveam))
5
6 (in-package :split-sequence/tests)
7
8 (in-suite* :split-sequence)
9
10 ;;;; SPLIT-SEQUENCE
11
12 (test (split-sequence.1 :compile-at :definition-time)
13 (is (equalp (split-sequence #\; "a;;b;c")
14 (values '("a" "" "b" "c") 6))))
15
16 (test (split-sequence.2 :compile-at :definition-time)
17 (is (equalp (split-sequence #\; "a;;b;c" :from-end t)
18 (values '("a" "" "b" "c") 0))))
19
20 (test (split-sequence.3 :compile-at :definition-time)
21 (is (equalp (split-sequence #\; "a;;b;c" :from-end t :count 1)
22 (values '("c") 4))))
23
24 (test (split-sequence.4 :compile-at :definition-time)
25 (is (equalp (split-sequence #\; "a;;b;c" :remove-empty-subseqs t)
26 (values '("a" "b" "c") 6))))
27
28 (test (split-sequence.5 :compile-at :definition-time)
29 (is (equalp (split-sequence #\; ";oo;bar;ba;" :start 1 :end 9)
30 (values '("oo" "bar" "b") 9))))
31
32 (test (split-sequence-if.1 :compile-at :definition-time)
33 (is (equalp (split-sequence-if (lambda (x) (member x '(#\a #\b))) "abracadabra")
34 (values '("" "" "r" "c" "d" "" "r" "") 11))))
35
36 (test (split-sequence-if-not.1 :compile-at :definition-time)
37 (is (equalp (split-sequence-if-not (lambda (x) (member x '(#\a #\b))) "abracadabra")
38 (values '("ab" "a" "a" "ab" "a") 11))))