diff options
author | Evgeniy Khramtsov <ekhramtsov@process-one.net> | 2013-09-24 18:40:32 +1000 |
---|---|---|
committer | Evgeniy Khramtsov <ekhramtsov@process-one.net> | 2013-09-24 18:59:20 +1000 |
commit | 07c8bf50640f6cdee74517c6c17fdded698d1fb3 (patch) | |
tree | 63d5965317e8dc9154160f8a2870c195d200edae /test/ejabberd_SUITE.erl | |
parent | Better web-handlers detection (diff) |
Fix roster version support
Diffstat (limited to 'test/ejabberd_SUITE.erl')
-rw-r--r-- | test/ejabberd_SUITE.erl | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/test/ejabberd_SUITE.erl b/test/ejabberd_SUITE.erl index 904d2bf66..52d3e695a 100644 --- a/test/ejabberd_SUITE.erl +++ b/test/ejabberd_SUITE.erl @@ -161,6 +161,7 @@ db_tests() -> presence_broadcast, last, roster_get, + roster_ver, private, privacy, blocking, @@ -308,6 +309,29 @@ roster_get(Config) -> send_recv(Config, #iq{type = get, sub_els = [#roster{}]}), disconnect(Config). +roster_ver(Config) -> + %% Get initial "ver" + #iq{type = result, sub_els = [#roster{ver = Ver1, items = []}]} = + send_recv(Config, #iq{type = get, + sub_els = [#roster{ver = <<"">>}]}), + %% Should receive empty IQ-result + #iq{type = result, sub_els = []} = + send_recv(Config, #iq{type = get, + sub_els = [#roster{ver = Ver1}]}), + %% Attempting to subscribe to server's JID + send(Config, #presence{type = subscribe, to = server_jid(Config)}), + %% Receive a single roster push with the new "ver" + #iq{type = set, sub_els = [#roster{ver = Ver2}]} = recv(), + %% Requesting roster with the previous "ver". Should receive Ver2 again + #iq{type = result, sub_els = [#roster{ver = Ver2}]} = + send_recv(Config, #iq{type = get, + sub_els = [#roster{ver = Ver1}]}), + %% Now requesting roster with the newest "ver". Should receive empty IQ. + #iq{type = result, sub_els = []} = + send_recv(Config, #iq{type = get, + sub_els = [#roster{ver = Ver2}]}), + disconnect(Config). + presence(Config) -> send(Config, #presence{}), JID = my_jid(Config), |