File tree Expand file tree Collapse file tree 2 files changed +60
-0
lines changed Expand file tree Collapse file tree 2 files changed +60
-0
lines changed Original file line number Diff line number Diff line change
1
+ (ns clojure.core-test.interleave
2
+ (:require [clojure.test :as t :refer [deftest testing is are]]
3
+ [clojure.core-test.portability #?(:cljs :refer-macros :default :refer ) [when-var-exists ]]))
4
+
5
+ (when-var-exists
6
+ clojure.core/interleave
7
+ (deftest test-interleave
8
+ (testing " common cases"
9
+ (are [in ex] (= (apply interleave in) ex)
10
+ [[1 2 3 ]] [1 2 3 ]
11
+ [[1 2 3 ] [" a" " b" " c" ]] [1 " a" 2 " b" 3 " c" ]
12
+ [[1 2 3 ]
13
+ [" a" " b" " c" ]
14
+ [\a \b \c]] [1 " a" \a 2 " b" \b 3 " c" \c]
15
+ [#{1 } #{" a" }] [1 " a" ]
16
+ [(sorted-set 1 2 3 )
17
+ (sorted-set " a" " b" " c" )] [1 " a" 2 " b" 3 " c" ]
18
+ [(sorted-map :a 1 :b 2 )
19
+ [" a" " b" ]] [[:a 1 ] " a" [:b 2 ] " b" ]
20
+ ['(1 2 3 ) '(" a" " b" " c" )] [1 " a" 2 " b" 3 " c" ]
21
+ [" 123" " abc" ] [\1 \a \2 \b \3 \c]
22
+ [[:a ] [nil ]] [:a nil ]
23
+ [[nil ] [:a ] [nil ]] [nil :a nil ])
24
+ (testing " Differing sequence sizes, nil inputs"
25
+ (are [in ex] (= (apply interleave in) ex)
26
+ [[1 2 ]
27
+ [" a" " b" " c" ]
28
+ " 1234567" ] [1 " a" \1 2 " b" \2 ]
29
+ [[1 2 3 4 5 ]
30
+ [" a" " b" " c" ]
31
+ " 12" ] [1 " a" \1 2 " b" \2 ]
32
+ ['(1 2 3 ) '(" a" " b" )] [1 " a" 2 " b" ]
33
+ [(range ) '(" a" " b" )] [0 " a" 1 " b" ]
34
+ [(range ) nil ] []
35
+ [nil (range )] [])))))
Original file line number Diff line number Diff line change
1
+ (ns clojure.core-test.interpose
2
+ (:require [clojure.test :as t :refer [deftest testing is are]]
3
+ [clojure.core-test.portability #?(:cljs :refer-macros :default :refer ) [when-var-exists ]]))
4
+
5
+ (when-var-exists
6
+ clojure.core/interpose
7
+ (deftest test-interpose
8
+ (testing " common cases"
9
+ (is (fn? (interpose " a" )))
10
+ (are [in ex] (= (apply interpose in) ex)
11
+ [" a" [1 2 3 ]] [1 " a" 2 " a" 3 ]
12
+ [#{1 } #{" a" }] [" a" ]
13
+ [(sorted-set 1 2 3 )
14
+ (sorted-set " a" " b" " c" )] [" a" (sorted-set 1 2 3 )
15
+ " b" (sorted-set 1 2 3 )
16
+ " c" ]
17
+ [" a"
18
+ (sorted-map :a 1 :b 2 )] [[:a 1 ] " a" [:b 2 ]]
19
+ [1 '(" a" " b" " c" )] [" a" 1 " b" 1 " c" ]
20
+ [" 1" " abc" ] [\a " 1" \b " 1" \c]
21
+ [[:a ] [nil ]] [nil ])
22
+ (testing " nil inputs"
23
+ (are [in ex] (= (apply interpose in) ex)
24
+ [nil [1 2 3 ]] [1 nil 2 nil 3 ]
25
+ [1 nil ] '())))))
You can’t perform that action at this time.
0 commit comments