         (testing "with keyword as allowed method"
           (let [handler (method-handler :get)]
             (is (= (:body (handler allowed)) allowed))
-            (is (thrown? Exception (handler forbidden)))))
+            (is (thrown? clojure.lang.ExceptionInfo (handler forbidden)))))
 
         (testing "with set of keywords as allowed method"
           (let [handler (method-handler #{:get})]
             (is (= (:body (handler allowed)) allowed))
-            (handler forbidden)
-            (is (thrown? Exception (handler forbidden)))))
+            (is (thrown? clojure.lang.ExceptionInfo (handler forbidden)))))
 
         (testing "with nil as allowed request method"
           (let [handler (method-handler nil)]

      (is (= {:uri "/path2"} (:body rsp)))))

  (testing "check access rules 3"
    (is (thrown? Exception (handler1 {:uri "/path3"}))))

  (testing "check access rules 4"
    (is (thrown? Exception (handler1 {:uri "/path4"}))))

  (testing "check access rules 5"
    (let [rsp (handler2 {:uri "/path3"})]

        (testing "with keyword as allowed method"
          (let [handler (method-handler :get)]
            (is (= (:body (handler allowed)) allowed))
            (is (thrown? clojure.lang.ExceptionInfo (handler forbidden)))))

        (testing "with set of keywords as allowed method"
          (let [handler (method-handler #{:get})]
            (is (= (:body (handler allowed)) allowed))
            (is (thrown? clojure.lang.ExceptionInfo (handler forbidden)))))

        (testing "with nil as allowed request method"
          (let [handler (method-handler nil)]
