diff options
author | Kim Alvefur <zash@zash.se> | 2019-01-28 01:41:01 +0100 |
---|---|---|
committer | Kim Alvefur <zash@zash.se> | 2019-01-28 01:41:01 +0100 |
commit | cca227b28bdb2d843ca4eb86a52c130476f9098d (patch) | |
tree | d0043b4eea17b54199e2e96ce9383933a6f15fa5 /spec | |
parent | e934fd83af9d54e84b5197e5c306414cfe7e25c7 (diff) | |
download | prosody-cca227b28bdb2d843ca4eb86a52c130476f9098d.tar.gz prosody-cca227b28bdb2d843ca4eb86a52c130476f9098d.zip |
util.pubsub: Add support for requesting multiple specific items (needed for #1305)
Diffstat (limited to 'spec')
-rw-r--r-- | spec/util_pubsub_spec.lua | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/spec/util_pubsub_spec.lua b/spec/util_pubsub_spec.lua index 6386100b..551aedd6 100644 --- a/spec/util_pubsub_spec.lua +++ b/spec/util_pubsub_spec.lua @@ -170,6 +170,37 @@ describe("util.pubsub", function () end); + describe("the thing", function () + randomize(false); -- These tests are ordered + + local service = pubsub.new(); + + it("creates a node with some items", function () + assert.truthy(service:create("node", true, { max_items = 3 })); + assert.truthy(service:publish("node", true, "1", "item 1")); + assert.truthy(service:publish("node", true, "2", "item 2")); + assert.truthy(service:publish("node", true, "3", "item 3")); + end); + + it("should return the requested item", function () + local ok, ret = service:get_items("node", true, "1"); + assert.truthy(ok); + assert.same({ "1", ["1"] = "item 1" }, ret); + end); + + it("should return multiple requested items", function () + local ok, ret = service:get_items("node", true, { "1", "2" }); + assert.truthy(ok); + assert.same({ + "1", + "2", + ["1"] = "item 1", + ["2"] = "item 2", + }, ret); + end); + end); + + describe("node config", function () local service; before_each(function () |