Software /
code /
prosody
Changeset
9208:d3bb59ec0173
util.pubsub tests: Add tests for get_items()
author | Matthew Wild <mwild1@gmail.com> |
---|---|
date | Sat, 18 Aug 2018 15:28:08 +0100 |
parents | 9207:76d593b35958 |
children | 9209:69e17edf8796 |
files | spec/util_pubsub_spec.lua |
diffstat | 1 files changed, 28 insertions(+), 0 deletions(-) [+] |
line wrap: on
line diff
--- a/spec/util_pubsub_spec.lua Sat Aug 18 15:26:35 2018 +0100 +++ b/spec/util_pubsub_spec.lua Sat Aug 18 15:28:08 2018 +0100 @@ -310,5 +310,33 @@ assert.equal("bye", item); end); end); + describe("get_items()", function () + it("fails on non-existent nodes", function () + local ok, err = service:get_items("no-node", true); + assert.is_falsy(ok); + assert.equal("item-not-found", err); + end); + it("returns no items on an empty node", function () + local ok, items = service:get_items("test", true); + assert.is_true(ok); + assert.equal(0, #items); + assert.is_nil(next(items)); + end); + it("returns no items on an empty node", function () + local ok, items = service:get_items("test", true); + assert.is_true(ok); + assert.equal(0, #items); + assert.is_nil((next(items))); + end); + it("returns all published items", function () + service:publish("test", true, "one", "hello world"); + service:publish("test", true, "two", "hello again"); + service:publish("test", true, "three", "hey"); + service:publish("test", true, "one", "bye"); + local ok, items = service:get_items("test", true); + assert.is_true(ok); + assert.same({ "one", "three", "two", two = "hello again", three = "hey", one = "bye" }, items); + end); + end); end); end);