aboutsummaryrefslogtreecommitdiff
path: root/test/com/github/ivarref/yoltq
diff options
context:
space:
mode:
authorIvar Refsdal <ivar.refsdal@nsd.no>2021-09-23 13:01:23 +0200
committerIvar Refsdal <ivar.refsdal@nsd.no>2021-09-23 13:01:23 +0200
commitdc2e14b4e1e91e6fefecc01c312a44c0033640c9 (patch)
treeca51f0e1830abc41672cc565487ddaaa3135ec89 /test/com/github/ivarref/yoltq
parentDocument force-retry! (diff)
downloadfiinha-dc2e14b4e1e91e6fefecc01c312a44c0033640c9.tar.gz
fiinha-dc2e14b4e1e91e6fefecc01c312a44c0033640c9.tar.xz
Basic depends-on works for test queue
Diffstat (limited to 'test/com/github/ivarref/yoltq')
-rw-r--r--test/com/github/ivarref/yoltq/test_utils.clj2
-rw-r--r--test/com/github/ivarref/yoltq/virtual_test.clj27
2 files changed, 28 insertions, 1 deletions
diff --git a/test/com/github/ivarref/yoltq/test_utils.clj b/test/com/github/ivarref/yoltq/test_utils.clj
index df56460..5427ff5 100644
--- a/test/com/github/ivarref/yoltq/test_utils.clj
+++ b/test/com/github/ivarref/yoltq/test_utils.clj
@@ -35,7 +35,7 @@
(defn put-transact! [id payload]
- @(d/transact (:conn @yq/*config*) [(i/put @yq/*config* id payload)]))
+ @(d/transact (:conn @yq/*config*) [(i/put @yq/*config* id payload {})]))
(defn advance! [tp]
diff --git a/test/com/github/ivarref/yoltq/virtual_test.clj b/test/com/github/ivarref/yoltq/virtual_test.clj
index 2b67e5e..789e5b4 100644
--- a/test/com/github/ivarref/yoltq/virtual_test.clj
+++ b/test/com/github/ivarref/yoltq/virtual_test.clj
@@ -284,3 +284,30 @@
(is (= 1 (tq/consume! :q)))
(is (= 2 (tq/force-retry! :q)))
(is (= 3 (tq/force-retry! :q)))))
+
+
+(deftest ext-id-no-duplicates
+ (let [conn (u/empty-conn)]
+ (yq/init! {:conn conn})
+ (yq/add-consumer! :q identity)
+ @(d/transact conn [(yq/put :q nil {:id "123"})])
+ (is (thrown? Exception @(d/transact conn [(yq/put :q nil {:id "123"})])))))
+
+
+(deftest depends-on
+ (let [conn (u/empty-conn)]
+ (yq/init! {:conn conn})
+ (yq/add-consumer! :a identity)
+ (yq/add-consumer! :b identity)
+ @(d/transact conn [(yq/put :a "a" {:id "1"})])
+ (is (thrown? Exception @(d/transact conn [(yq/put :b "b" {:depends-on [:a "0"]})])))
+ @(d/transact conn [(yq/put :b "b" {:depends-on [:a "1"]})])
+
+ ; can't consume :b yet:
+ (is (= {:depends-on [:a "1"]} (tq/consume! :b)))
+ (is (= {:depends-on [:a "1"]} (tq/consume! :b)))
+
+ (is (= "a" (tq/consume! :a)))
+ (is (= "b" (tq/consume! :b)))
+ (is (= "b" (tq/force-retry! :b)))))
+