Skip to content

Commit 148adc8

Browse files
committed
wip async execution tests abstracted
1 parent 7c56420 commit 148adc8

1 file changed

Lines changed: 22 additions & 0 deletions

File tree

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
(ns goose.integration.async-execution-test
2+
(:require
3+
[goose.client :as c]
4+
[goose.worker :as w]
5+
[goose.test-utils :as tu]
6+
[clojure.test :refer [deftest is testing use-fixtures]]))
7+
8+
(use-fixtures :each tu/redis-fixture)
9+
10+
(deftest perform-async-test
11+
(testing "Goose executes a function asynchronously"
12+
(let [res (promise)
13+
deliver-fn (let [test-ns 'goose.integration.async-execution-test.tmp.perform-async-test
14+
fn-sym 'deliver-result
15+
test-fn #(deliver res %)]
16+
(create-ns test-ns)
17+
(intern test-ns fn-sym test-fn)
18+
(symbol (str test-ns) (str fn-sym)))]
19+
(c/perform-async tu/redis-client-opts deliver-fn "async-execute-test")
20+
(let [worker (w/start tu/redis-worker-opts)]
21+
(is (= (deref res 1000 :timed-out) "async-execute-test"))
22+
(w/stop worker)))))

0 commit comments

Comments
 (0)