2017-11-24 07:42:53 +00:00
|
|
|
(ns reitit.impl-test
|
|
|
|
|
(:require [clojure.test :refer [deftest testing is are]]
|
|
|
|
|
[reitit.impl :as impl]))
|
|
|
|
|
|
|
|
|
|
(deftest segments-test
|
|
|
|
|
(is (= ["" "api" "ipa" "beer" "craft" "bisse"]
|
|
|
|
|
(into [] (impl/segments "/api/ipa/beer/craft/bisse"))))
|
|
|
|
|
(is (= ["" "a" "" "b" "" "c" ""]
|
|
|
|
|
(into [] (impl/segments "/a//b//c/")))))
|
2017-12-04 20:44:13 +00:00
|
|
|
|
|
|
|
|
(deftest strip-nils-test
|
|
|
|
|
(is (= {:a 1, :c false} (impl/strip-nils {:a 1, :b nil, :c false}))))
|
2018-03-20 14:30:53 +00:00
|
|
|
|
|
|
|
|
(deftest url-encode-and-decode-test
|
|
|
|
|
(is (= "reitit.impl-test%2Fkikka" (-> ::kikka
|
|
|
|
|
impl/into-string
|
|
|
|
|
impl/url-encode)))
|
2018-03-21 06:18:52 +00:00
|
|
|
(is (= ::kikka (-> ::kikka
|
|
|
|
|
impl/into-string
|
|
|
|
|
impl/url-encode
|
|
|
|
|
impl/url-decode
|
|
|
|
|
keyword))))
|
2018-03-20 14:30:53 +00:00
|
|
|
|
|
|
|
|
(deftest path-params-test
|
|
|
|
|
(is (= {:n "1"
|
2018-03-21 05:48:56 +00:00
|
|
|
:n1 "-1"
|
|
|
|
|
:n2 "1"
|
|
|
|
|
:n3 "1"
|
|
|
|
|
:n4 "1"
|
|
|
|
|
:n5 "1"
|
2018-03-20 14:30:53 +00:00
|
|
|
:d "2.2"
|
2018-03-21 05:48:56 +00:00
|
|
|
:b "true"
|
2018-03-20 14:30:53 +00:00
|
|
|
:s "kikka"
|
2018-03-21 05:48:56 +00:00
|
|
|
:u "c2541900-17a7-4353-9024-db8ac258ba4e"
|
2018-03-20 14:30:53 +00:00
|
|
|
:k "kikka"
|
|
|
|
|
:qk "reitit.impl-test%2Fkikka"}
|
|
|
|
|
(impl/path-params {:n 1
|
2018-03-21 05:48:56 +00:00
|
|
|
:n1 -1
|
|
|
|
|
:n2 (long 1)
|
|
|
|
|
:n3 (int 1)
|
|
|
|
|
:n4 (short 1)
|
|
|
|
|
:n5 (byte 1)
|
2018-03-20 14:30:53 +00:00
|
|
|
:d 2.2
|
2018-03-21 05:48:56 +00:00
|
|
|
:b true
|
2018-03-20 14:30:53 +00:00
|
|
|
:s "kikka"
|
2018-03-21 05:48:56 +00:00
|
|
|
:u #uuid "c2541900-17a7-4353-9024-db8ac258ba4e"
|
2018-03-20 14:30:53 +00:00
|
|
|
:k :kikka
|
|
|
|
|
:qk ::kikka}))))
|