        :done nil)))
 
 (defcoretest handling-100-continue-requests-by-responding-directly
-  [ch]
-  (fn [upstream request]
-    (enqueue ch [:request request])
+  (deftrackedapp [upstream request]
     (upstream :response [417 {"content-length" "0"}])
-    (fn [evt val] (enqueue ch [evt val])))
+    (fn [_ _]))
 
   (http-write "POST / HTTP/1.1\r\n"
               "Content-Length: 5\r\n"

       :resume  nil)))

(defcoretest raising-error-during-pause-event
  [ch]
  (fn [resp request]
    (enqueue ch [:request request])
    (let [latch (atom true)]
      (resp :response [200 {"transfer-encoding" "chunked"} :chunked])
      (bg-while @latch (resp :body "HAMMER TIME!"))
      (fn [evt val]
        (enqueue ch [evt val])
        (when (= :pause evt)
          (swap! latch (fn [_] false))
          (throw (Exception. "fail"))))))

  (is (= 0 (count (netty-exception-events)))))

(defcoretest upstream-raising-error-during-chunked-request
  (fn [upstream request]
    (throw (Exception. "TROLL APP IS TROLLIN'")))

