diff options
Diffstat (limited to 'test/suite.erl')
-rw-r--r-- | test/suite.erl | 52 |
1 files changed, 36 insertions, 16 deletions
diff --git a/test/suite.erl b/test/suite.erl index fd5e175ea..8000e1d29 100644 --- a/test/suite.erl +++ b/test/suite.erl @@ -1,6 +1,6 @@ %%%------------------------------------------------------------------- %%% @author Evgeniy Khramtsov <> -%%% @copyright (C) 2013, Evgeniy Khramtsov +%%% @copyright (C) 2013-2016, Evgeniy Khramtsov %%% @doc %%% %%% @end @@ -65,9 +65,21 @@ init_config(Config) -> {resource, <<"resource">>}, {master_resource, <<"master_resource">>}, {slave_resource, <<"slave_resource">>}, - {password, <<"password">>} + {password, <<"password">>}, + {backends, get_config_backends()} |Config]. +%% Read environment variable CT_DB=riak,mysql to limit the backends to test. +%% You can thus limit the backend you want to test with: +%% CT_BACKENDS=riak,mysql rebar ct suites=ejabberd +get_config_backends() -> + case os:getenv("CT_BACKENDS") of + false -> all; + String -> + Backends0 = string:tokens(String, ","), + lists:map(fun(Backend) -> string:strip(Backend, both, $ ) end, Backends0) + end. + process_config_tpl(Content, []) -> Content; process_config_tpl(Content, [{Name, DefaultValue} | Rest]) -> @@ -94,8 +106,8 @@ init_stream(Config) -> ok = send_text(Config, io_lib:format(?STREAM_HEADER, [?config(server, Config)])), {xmlstreamstart, <<"stream:stream">>, Attrs} = recv(), - <<"jabber:client">> = xml:get_attr_s(<<"xmlns">>, Attrs), - <<"1.0">> = xml:get_attr_s(<<"version">>, Attrs), + <<"jabber:client">> = fxml:get_attr_s(<<"xmlns">>, Attrs), + <<"1.0">> = fxml:get_attr_s(<<"version">>, Attrs), #stream_features{sub_els = Fs} = recv(), Mechs = lists:flatmap( fun(#sasl_mechanisms{list = Ms}) -> @@ -182,8 +194,8 @@ wait_auth_SASL_result(Config) -> io_lib:format(?STREAM_HEADER, [?config(server, Config)])), {xmlstreamstart, <<"stream:stream">>, Attrs} = recv(), - <<"jabber:client">> = xml:get_attr_s(<<"xmlns">>, Attrs), - <<"1.0">> = xml:get_attr_s(<<"version">>, Attrs), + <<"jabber:client">> = fxml:get_attr_s(<<"xmlns">>, Attrs), + <<"1.0">> = fxml:get_attr_s(<<"version">>, Attrs), #stream_features{sub_els = Fs} = recv(), lists:foldl( fun(#feature_sm{}, ConfigAcc) -> @@ -255,7 +267,7 @@ send(State, Pkt) -> end, El = xmpp_codec:encode(NewPkt), ct:pal("sent: ~p <-~n~s", [El, xmpp_codec:pp(NewPkt)]), - ok = send_text(State, xml:element_to_binary(El)), + ok = send_text(State, fxml:element_to_binary(El)), NewID. send_recv(State, IQ) -> @@ -271,7 +283,7 @@ sasl_new(<<"DIGEST-MD5">>, User, Server, Password) -> case cyrsasl_digest:parse(ServerIn) of bad -> {error, <<"Invalid SASL challenge">>}; KeyVals -> - Nonce = xml:get_attr_s(<<"nonce">>, KeyVals), + Nonce = fxml:get_attr_s(<<"nonce">>, KeyVals), CNonce = id(), Realm = proplists:get_value(<<"realm">>, KeyVals, Server), DigestURI = <<"xmpp/", Realm/binary>>, @@ -331,28 +343,36 @@ response(User, Passwd, Nonce, AuthzId, Realm, CNonce, hex((erlang:md5(T))). my_jid(Config) -> - jlib:make_jid(?config(user, Config), - ?config(server, Config), - ?config(resource, Config)). + jid:make(?config(user, Config), + ?config(server, Config), + ?config(resource, Config)). server_jid(Config) -> - jlib:make_jid(<<>>, ?config(server, Config), <<>>). + jid:make(<<>>, ?config(server, Config), <<>>). pubsub_jid(Config) -> Server = ?config(server, Config), - jlib:make_jid(<<>>, <<"pubsub.", Server/binary>>, <<>>). + jid:make(<<>>, <<"pubsub.", Server/binary>>, <<>>). proxy_jid(Config) -> Server = ?config(server, Config), - jlib:make_jid(<<>>, <<"proxy.", Server/binary>>, <<>>). + jid:make(<<>>, <<"proxy.", Server/binary>>, <<>>). muc_jid(Config) -> Server = ?config(server, Config), - jlib:make_jid(<<>>, <<"conference.", Server/binary>>, <<>>). + jid:make(<<>>, <<"conference.", Server/binary>>, <<>>). muc_room_jid(Config) -> Server = ?config(server, Config), - jlib:make_jid(<<"test">>, <<"conference.", Server/binary>>, <<>>). + jid:make(<<"test">>, <<"conference.", Server/binary>>, <<>>). + +mix_jid(Config) -> + Server = ?config(server, Config), + jid:make(<<>>, <<"mix.", Server/binary>>, <<>>). + +mix_room_jid(Config) -> + Server = ?config(server, Config), + jid:make(<<"test">>, <<"mix.", Server/binary>>, <<>>). id() -> id(undefined). |