     (is (= (:status resp) 200))
     (is (= (:body resp) "hello async"))))
 
+(deftest test-async
+  (let [resp (http/get "http://localhost:4347/async")]
+    (is (= (:status resp) 200))
+    (is (= (:body resp) "hello async"))))
+
+(deftest test-async-response
+  (let [resp (http/get "http://localhost:4347/async-response")]
+    (is (= (:status resp) 200))
+    (is (= (:body resp) "hello async"))))
+
 (deftest test-async-just-body
-  (let [resp (http/get "http://localhost:4347/just-body")]
+  (let [resp (http/get "http://localhost:4347/async-just-body")]
     (is (= (:status resp) 200))
     (is (:headers resp))
     (is (= (:body resp) "just-body"))))

                            :body (range 1 10)}))
  (GET "/file" [] (wrap-file-info (fn [req]
                                    {:status 200
                                     :body (let [l (Integer/valueOf (or (-> req :params :l) "5024000"))]
                                             (gen-tempfile l ".txt"))})))
  (POST "/multipart" [] (fn [req] (let [{:keys [title file]} (:params req)]
                                   {:status 200
                                    :body (str title ": " (:size file))})))
  (POST "/chunked" [] (fn [req] {:status 200
                                :body (str (:content-length req))}))
  (GET "/null" [] (fn [req] {:status 200 :body nil}))
  (GET "/inputstream" [] response-inputstream)
  (GET "/async" [] async)
  (GET "/ws" [] ws-handler)
  (GET "/just-body" [] async-just-body))

(use-fixtures :once (fn [f]
                      (let [server (run-server

   :headers {"Content-Type" "text/plain"}
   :body    "Hello World"})

(defasync async-handler [req] cb
  (cb {:status 200 :body "hello async"}))

(defasync async-just-body [req] cb
  (cb "just-body"))

(defwshandler ws-handler [req] con
  (on-mesg con (fn [msg] (send-mesg con msg))))

(defn to-int [int-str] (Integer/valueOf int-str))

(defroutes test-routes
  (GET "/" [] "hello world")
