summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
Diffstat (limited to 'Swiften/QA/ScriptedTests/PubSub.lua')
-rw-r--r--Swiften/QA/ScriptedTests/PubSub.lua38
1 files changed, 30 insertions, 8 deletions
diff --git a/Swiften/QA/ScriptedTests/PubSub.lua b/Swiften/QA/ScriptedTests/PubSub.lua
index cb4679a..04a82ba 100644
--- a/Swiften/QA/ScriptedTests/PubSub.lua
+++ b/Swiften/QA/ScriptedTests/PubSub.lua
@@ -1,6 +1,6 @@
--[[
- Copyright (c) 2013 Remko Tronçon
- Licensed under the GNU General Public License.
+ Copyright (c) 2013 Isode Limited.
+ All rights reserved.
See the COPYING file for more information.
--]]
@@ -60,11 +60,15 @@ function test_entity_use_cases()
-- 5.6 Subscriptions
assert(node:create())
assert(subscriber_node:subscribe({ jid = subscriber_jid }))
- local service_subscriptions = assert(pubsub:get_subscriptions())
- -- FIXME: Doesn't seem to return anything on M-Link. Test this later if this is supposed to work.
- --print(service_subscriptions)
- local node_subscriptions = assert(node:get_subscriptions())
- --print(node_subscriptions)
+ local service_subscriptions = assert(subscriber_pubsub:get_subscriptions())
+ assert(#service_subscriptions == 1)
+ assert(service_subscriptions[1].node == node_id)
+ assert(service_subscriptions[1].jid == subscriber_jid)
+ assert(service_subscriptions[1].subscription == 'subscribed')
+ local node_subscriptions = assert(subscriber_node:get_subscriptions())
+ assert(#node_subscriptions == 1)
+ assert(node_subscriptions[1].jid == subscriber_jid)
+ assert(node_subscriptions[1].subscription == 'subscribed')
assert(node:delete())
-- 5.7 Retrieve affiliations
@@ -282,7 +286,25 @@ function test_owner_use_cases()
-- 8.7 Process pending subscription requests
-- TODO
- -- ...
+ -- 8.8 Manage Subscriptions
+ assert(node:create())
+ assert(subscriber_node:subscribe({ jid = subscriber_jid }))
+ local items = assert(node:get_owner_subscriptions())
+ assert(#items == 1)
+ assert(items[1].jid == subscriber_jid)
+ assert(items[1].subscription == "subscribed")
+ assert(node:delete())
+
+ -- 8.9 Manage Affiliations
+ assert(node:create())
+ assert(node:set_owner_affiliations{affiliations = {{jid = subscriber_jid, type = 'publisher'}}})
+ local items = assert(node:get_owner_affiliations())
+ assert(#items == 2)
+ assert(items[1].jid == publisher_jid)
+ assert(items[1].type == "owner")
+ assert(items[2].jid == subscriber_jid)
+ assert(items[2].type == "publisher")
+ assert(node:delete())
end
function run_tests()