diff options
author | Evgeniy Khramtsov <ekhramtsov@process-one.net> | 2014-07-27 13:02:46 +0400 |
---|---|---|
committer | Evgeniy Khramtsov <ekhramtsov@process-one.net> | 2014-07-27 13:06:20 +0400 |
commit | abeaac1c11a2d4f374a837e957cd0388f90d03cf (patch) | |
tree | efad4d3e492da863b7edfe46ba8b9796ef3fe96c /test/ejabberd_SUITE.erl | |
parent | Re-generate the XMPP codec using updated xml_gen (diff) |
Add tests for mod_announce
Diffstat (limited to 'test/ejabberd_SUITE.erl')
-rw-r--r-- | test/ejabberd_SUITE.erl | 39 |
1 files changed, 39 insertions, 0 deletions
diff --git a/test/ejabberd_SUITE.erl b/test/ejabberd_SUITE.erl index e362913a1..2c0fcc214 100644 --- a/test/ejabberd_SUITE.erl +++ b/test/ejabberd_SUITE.erl @@ -206,6 +206,8 @@ db_tests(riak) -> [offline_master, offline_slave]}, {test_muc, [parallel], [muc_master, muc_slave]}, + {test_announce, [parallel], + [announce_master, announce_slave]}, {test_roster_remove, [parallel], [roster_remove_master, roster_remove_slave]}]; @@ -233,6 +235,8 @@ db_tests(mnesia) -> [carbons_master, carbons_slave]}, {test_muc, [parallel], [muc_master, muc_slave]}, + {test_announce, [parallel], + [announce_master, announce_slave]}, {test_roster_remove, [parallel], [roster_remove_master, roster_remove_slave]}]; @@ -259,6 +263,8 @@ db_tests(_) -> [offline_master, offline_slave]}, {test_muc, [parallel], [muc_master, muc_slave]}, + {test_announce, [parallel], + [announce_master, announce_slave]}, {test_roster_remove, [parallel], [roster_remove_master, roster_remove_slave]}]. @@ -1273,6 +1279,39 @@ muc_slave(Config) -> role = none}]}]} = recv(), disconnect(Config). +announce_master(Config) -> + MyJID = my_jid(Config), + ServerJID = server_jid(Config), + Peer = ?config(slave, Config), + MotdJID = jlib:jid_replace_resource(ServerJID, <<"announce/motd">>), + MotdDelJID = jlib:jid_replace_resource(ServerJID, <<"announce/motd/delete">>), + MotdText = #text{data = <<"motd">>}, + send(Config, #presence{}), + #presence{from = MyJID} = recv(), + %% Set message of the day + send(Config, #message{to = MotdJID, body = [MotdText]}), + %% Receive this message back + #message{from = ServerJID, body = [MotdText]} = recv(), + wait_for_slave(Config), + %% Peer becomes available and then unavailable + #presence{from = Peer} = recv(), + #presence{from = Peer, type = unavailable} = recv(), + %% Delete message of the day + send(Config, #message{to = MotdDelJID}), + disconnect(Config). + +announce_slave(Config) -> + MyJID = my_jid(Config), + ServerJID = server_jid(Config), + Peer = ?config(master, Config), + MotdText = #text{data = <<"motd">>}, + wait_for_master(Config), + send(Config, #presence{}), + ?recv3(#presence{from = Peer}, + #presence{from = MyJID}, + #message{from = ServerJID, body = [MotdText]}), + disconnect(Config). + offline_master(Config) -> Peer = ?config(slave, Config), LPeer = jlib:jid_remove_resource(Peer), |