From 4a199b918a8d9e0eaf3095901508d472bcf2b925 Mon Sep 17 00:00:00 2001 From: Daw-Ran Liou Date: Wed, 9 Oct 2019 07:55:59 -0700 Subject: [PATCH] Add test to validate middleware cannot be list When meta-merges list with a vector, the resulting order is reversed. To avoid this for the middleware chain, middleware cannot be lists. --- test/cljc/reitit/ring_spec_test.cljc | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/test/cljc/reitit/ring_spec_test.cljc b/test/cljc/reitit/ring_spec_test.cljc index 6e2d7c6d..4e1eb69c 100644 --- a/test/cljc/reitit/ring_spec_test.cljc +++ b/test/cljc/reitit/ring_spec_test.cljc @@ -77,7 +77,15 @@ :data {:middleware [{:spec (s/keys :opt-un [::roles]) :wrap (fn [handler] (fn [request] - (handler request)))}]}}))))) + (handler request)))}]}})))) + (testing "middleware cannot be a list" + (is (thrown-with-msg? + ExceptionInfo + #":reitit.ring.spec/invalid-specs" + (ring/router + ["/api" {:handler identity + :middleware '()}] + {:validate rrs/validate}))))) (deftest coercion-spec-test (is (r/router?