diff --git a/test/metabase/test/async.clj b/test/metabase/test/async.clj
index f34b1f628c9ae8614c48b10b4d3d3191fc7a4448..fe3e368bd383c22bbb35d461c8c165baffac5f8b 100644
--- a/test/metabase/test/async.clj
+++ b/test/metabase/test/async.clj
@@ -33,8 +33,7 @@
   "Blocking version of async/result."
   [job-id]
   (while-with-timeout (not (and (@job-done? job-id)
-                                (-> job-id
-                                    ComputationJob
-                                    async/result
-                                    (find :result)))))
+                                (let [job (ComputationJob job-id)]
+                                  (or (:result (async/result job))
+                                      (async/canceled? job))))))
   (async/result (ComputationJob job-id)))