Merge branch 'gen-ct' into develop

This commit is contained in:
Feng Lee 2019-10-23 16:36:17 +08:00
commit d5412c8d34
47 changed files with 1219 additions and 5 deletions

View File

@ -25,6 +25,7 @@
all() -> emqx_ct:all(?MODULE).
init_per_suite(Config) ->
emqx_ct_helpers:start_apps([]),
Config.
@ -32,6 +33,59 @@ init_per_suite(Config) ->
end_per_suite(_Config) ->
emqx_ct_helpers:stop_apps([]).
t_start(_) ->
error('TODO').
t_restart(_) ->
error('TODO').
t_stop(_) ->
error('TODO').
t_is_running(_) ->
error('TODO').
t_subscribe(_) ->
error('TODO').
t_publish(_) ->
error('TODO').
t_unsubscribe(_) ->
error('TODO').
t_topics(_) ->
error('TODO').
t_subscribers(_) ->
error('TODO').
t_subscriptions(_) ->
error('TODO').
t_subscribed(_) ->
error('TODO').
t_hook(_) ->
error('TODO').
t_unhook(_) ->
error('TODO').
t_run_hook(_) ->
error('TODO').
t_run_fold_hook(_) ->
error('TODO').
t_shutdown(_) ->
error('TODO').
t_reboot(_) ->
error('TODO').
t_get_env(_) ->
?assertEqual(undefined, emqx:get_env(undefined_key)),
?assertEqual(default_value, emqx:get_env(undefined_key, default_value)),

View File

@ -0,0 +1,40 @@
%%--------------------------------------------------------------------
%% Copyright (c) 2019 EMQ Technologies Co., Ltd. All Rights Reserved.
%%
%% Licensed under the Apache License, Version 2.0 (the "License");
%% you may not use this file except in compliance with the License.
%% You may obtain a copy of the License at
%%
%% http://www.apache.org/licenses/LICENSE-2.0
%%
%% Unless required by applicable law or agreed to in writing, software
%% distributed under the License is distributed on an "AS IS" BASIS,
%% WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
%% See the License for the specific language governing permissions and
%% limitations under the License.
%%--------------------------------------------------------------------
-module(emqx_access_control_SUITE).
-compile(export_all).
-compile(nowarn_export_all).
-include_lib("eunit/include/eunit.hrl").
all() -> emqx_ct:all(?MODULE).
init_per_testcase(_TestCase, Config) ->
Config.
end_per_testcase(_TestCase, Config) ->
Config.
t_authenticate(_) ->
error('TODO').
t_check_acl(_) ->
error('TODO').
t_reload_acl(_) ->
error('TODO').

View File

@ -0,0 +1,37 @@
%%--------------------------------------------------------------------
%% Copyright (c) 2019 EMQ Technologies Co., Ltd. All Rights Reserved.
%%
%% Licensed under the Apache License, Version 2.0 (the "License");
%% you may not use this file except in compliance with the License.
%% You may obtain a copy of the License at
%%
%% http://www.apache.org/licenses/LICENSE-2.0
%%
%% Unless required by applicable law or agreed to in writing, software
%% distributed under the License is distributed on an "AS IS" BASIS,
%% WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
%% See the License for the specific language governing permissions and
%% limitations under the License.
%%--------------------------------------------------------------------
-module(emqx_access_rule_SUITE).
-compile(export_all).
-compile(nowarn_export_all).
-include_lib("eunit/include/eunit.hrl").
all() -> emqx_ct:all(?MODULE).
init_per_testcase(_TestCase, Config) ->
Config.
end_per_testcase(_TestCase, Config) ->
Config.
t_compile(_) ->
error('TODO').
t_match(_) ->
error('TODO').

View File

@ -0,0 +1,67 @@
%%--------------------------------------------------------------------
%% Copyright (c) 2019 EMQ Technologies Co., Ltd. All Rights Reserved.
%%
%% Licensed under the Apache License, Version 2.0 (the "License");
%% you may not use this file except in compliance with the License.
%% You may obtain a copy of the License at
%%
%% http://www.apache.org/licenses/LICENSE-2.0
%%
%% Unless required by applicable law or agreed to in writing, software
%% distributed under the License is distributed on an "AS IS" BASIS,
%% WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
%% See the License for the specific language governing permissions and
%% limitations under the License.
%%--------------------------------------------------------------------
-module(emqx_acl_cache_SUITE).
-compile(export_all).
-compile(nowarn_export_all).
-include_lib("eunit/include/eunit.hrl").
all() -> emqx_ct:all(?MODULE).
init_per_testcase(_TestCase, Config) ->
Config.
end_per_testcase(_TestCase, Config) ->
Config.
t_cache_k(_) ->
error('TODO').
t_cache_v(_) ->
error('TODO').
t_cleanup_acl_cache(_) ->
error('TODO').
t_get_oldest_key(_) ->
error('TODO').
t_get_newest_key(_) ->
error('TODO').
t_get_cache_max_size(_) ->
error('TODO').
t_get_cache_size(_) ->
error('TODO').
t_dump_acl_cache(_) ->
error('TODO').
t_empty_acl_cache(_) ->
error('TODO').
t_put_acl_cache(_) ->
error('TODO').
t_get_acl_cache(_) ->
error('TODO').
t_is_enabled(_) ->
error('TODO').

View File

@ -24,6 +24,13 @@
all() -> emqx_ct:all(?MODULE).
t_encode(_) ->
error('TODO').
t_decode(_) ->
error('TODO').
t_proper_base62(_) ->
Opts = [{numtests, 100}, {to_file, user}],
?assert(proper:quickcheck(prop_symmetric(), Opts)),

View File

@ -23,6 +23,22 @@
all() -> emqx_ct:all(?MODULE).
t_init(_) ->
error('TODO').
t_push(_) ->
error('TODO').
t_commit(_) ->
error('TODO').
t_size(_) ->
error('TODO').
t_items(_) ->
error('TODO').
t_batch_full_commit(_) ->
B0 = emqx_batch:init(#{batch_size => 3,
linger_ms => 2000,

View File

@ -27,10 +27,7 @@
-include("emqx.hrl").
-include("emqx_mqtt.hrl").
all() ->
[{group, pubsub},
{group, metrics},
{group, stats}].
all() -> emqx_ct:all(?MODULE).
groups() ->
[{pubsub, [sequence],
@ -159,3 +156,57 @@ set_get_stat(_) ->
emqx_stats:setstat('retained.max', 99),
?assertEqual(99, emqx_stats:getstat('retained.max')).
t_dispatch(_) ->
error('TODO').
t_subscriber_down(_) ->
error('TODO').
t_get_subopts(_) ->
error('TODO').
t_set_subopts(_) ->
error('TODO').
t_topics(_) ->
error('TODO').
t_stats_fun(_) ->
error('TODO').
t_init(_) ->
error('TODO').
t_handle_call(_) ->
error('TODO').
t_handle_cast(_) ->
error('TODO').
t_handle_info(_) ->
error('TODO').
t_terminate(_) ->
error('TODO').
t_code_change(_) ->
error('TODO').
t_safe_publish(_) ->
error('TODO').
t_subscribed(_) ->
error('TODO').
t_subscriptions(_) ->
error('TODO').
t_subscribers(_) ->
error('TODO').
t_unsubscribe(_) ->
error('TODO').
t_subscribe(_) ->
error('TODO').

View File

@ -0,0 +1,70 @@
%%--------------------------------------------------------------------
%% Copyright (c) 2019 EMQ Technologies Co., Ltd. All Rights Reserved.
%%
%% Licensed under the Apache License, Version 2.0 (the "License");
%% you may not use this file except in compliance with the License.
%% You may obtain a copy of the License at
%%
%% http://www.apache.org/licenses/LICENSE-2.0
%%
%% Unless required by applicable law or agreed to in writing, software
%% distributed under the License is distributed on an "AS IS" BASIS,
%% WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
%% See the License for the specific language governing permissions and
%% limitations under the License.
%%--------------------------------------------------------------------
-module(emqx_broker_helper_SUITE).
-compile(export_all).
-compile(nowarn_export_all).
-include_lib("eunit/include/eunit.hrl").
all() -> emqx_ct:all(?MODULE).
init_per_testcase(_TestCase, Config) ->
Config.
end_per_testcase(_TestCase, Config) ->
Config.
t_start_link(_) ->
error('TODO').
t_lookup_subid(_) ->
error('TODO').
t_create_seq(_) ->
error('TODO').
t_init(_) ->
error('TODO').
t_handle_call(_) ->
error('TODO').
t_handle_cast(_) ->
error('TODO').
t_handle_info(_) ->
error('TODO').
t_terminate(_) ->
error('TODO').
t_code_change(_) ->
error('TODO').
t_lookup_subpid(_) ->
error('TODO').
t_reclaim_seq(_) ->
error('TODO').
t_get_sub_shard(_) ->
error('TODO').
t_register_sub(_) ->
error('TODO').

View File

@ -88,3 +88,27 @@ t_lock_clientid(_) ->
{true, _Nodes} = emqx_cm_locker:unlock(<<"clientid">>),
{true, _Nodes} = emqx_cm_locker:unlock(<<"clientid">>).
t_unregister_channel(_) ->
error('TODO').
t_get_chan_attrs(_) ->
error('TODO').
t_get_chan_stats(_) ->
error('TODO').
t_lookup_channels(_) ->
error('TODO').
t_set_chan_stats(_) ->
error('TODO').
t_set_chan_attrs(_) ->
error('TODO').
t_register_channel(_) ->
error('TODO').
t_stats_fun(_) ->
error('TODO').

View File

@ -0,0 +1,43 @@
%%--------------------------------------------------------------------
%% Copyright (c) 2019 EMQ Technologies Co., Ltd. All Rights Reserved.
%%
%% Licensed under the Apache License, Version 2.0 (the "License");
%% you may not use this file except in compliance with the License.
%% You may obtain a copy of the License at
%%
%% http://www.apache.org/licenses/LICENSE-2.0
%%
%% Unless required by applicable law or agreed to in writing, software
%% distributed under the License is distributed on an "AS IS" BASIS,
%% WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
%% See the License for the specific language governing permissions and
%% limitations under the License.
%%--------------------------------------------------------------------
-module(emqx_cm_locker_SUITE).
-compile(export_all).
-compile(nowarn_export_all).
-include_lib("eunit/include/eunit.hrl").
all() -> emqx_ct:all(?MODULE).
init_per_testcase(_TestCase, Config) ->
Config.
end_per_testcase(_TestCase, Config) ->
Config.
t_start_link(_) ->
error('TODO').
t_trans(_) ->
error('TODO').
t_lock(_) ->
error('TODO').
t_unlock(_) ->
error('TODO').

View File

@ -0,0 +1,64 @@
%%--------------------------------------------------------------------
%% Copyright (c) 2019 EMQ Technologies Co., Ltd. All Rights Reserved.
%%
%% Licensed under the Apache License, Version 2.0 (the "License");
%% you may not use this file except in compliance with the License.
%% You may obtain a copy of the License at
%%
%% http://www.apache.org/licenses/LICENSE-2.0
%%
%% Unless required by applicable law or agreed to in writing, software
%% distributed under the License is distributed on an "AS IS" BASIS,
%% WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
%% See the License for the specific language governing permissions and
%% limitations under the License.
%%--------------------------------------------------------------------
-module(emqx_cm_registry_SUITE).
-compile(export_all).
-compile(nowarn_export_all).
-include_lib("eunit/include/eunit.hrl").
all() -> emqx_ct:all(?MODULE).
init_per_testcase(_TestCase, Config) ->
Config.
end_per_testcase(_TestCase, Config) ->
Config.
t_start_link(_) ->
error('TODO').
t_init(_) ->
error('TODO').
t_handle_call(_) ->
error('TODO').
t_handle_cast(_) ->
error('TODO').
t_handle_info(_) ->
error('TODO').
t_terminate(_) ->
error('TODO').
t_code_change(_) ->
error('TODO').
t_lookup_channels(_) ->
error('TODO').
t_is_enabled(_) ->
error('TODO').
t_unregister_channel(_) ->
error('TODO').
t_register_channel(_) ->
error('TODO').

View File

@ -38,6 +38,14 @@ set_special_configs(_App) -> ok.
end_per_suite(_Config) ->
emqx_ct_helpers:stop_apps([]),
ok.
t_check(_) ->
error('TODO').
t_detect(_) ->
error('TODO').
t_detect_check(_) ->
ClientInfo = #{zone => external,

View File

@ -39,4 +39,26 @@ t_guid_hexstr(_) ->
t_guid_base62(_) ->
Guid = emqx_guid:gen(),
?assertEqual(Guid, emqx_guid:from_base62(emqx_guid:to_base62(Guid))).
t_new(_) ->
error('TODO').
t_timestamp(_) ->
error('TODO').
t_to_hexstr(_) ->
error('TODO').
t_from_hexstr(_) ->
error('TODO').
t_from_base62(_) ->
error('TODO').
t_to_base62(_) ->
error('TODO').
t_gen(_) ->
error('TODO').

View File

@ -23,6 +23,25 @@
all() -> emqx_ct:all(?MODULE).
t_lookup(_) ->
error('TODO').
t_run_fold(_) ->
error('TODO').
t_run(_) ->
error('TODO').
t_del(_) ->
error('TODO').
t_add(_) ->
error('TODO').
t_add_del_hook(_) ->
{ok, _} = emqx_hooks:start_link(),
ok = emqx:hook(test_hook, fun ?MODULE:hook_fun1/1, []),

View File

@ -24,6 +24,10 @@
all() -> emqx_ct:all(?MODULE).
t_new(_) ->
error('TODO').
t_contain(_) ->
Inflight = emqx_inflight:insert(k, v, emqx_inflight:new()),
?assert(emqx_inflight:contain(k, Inflight)),
@ -90,3 +94,12 @@ t_window(_) ->
a, 1, emqx_inflight:new(2))),
?assertEqual([a, b], emqx_inflight:window(Inflight)).
t_to_list(_) ->
error('TODO').
t_size(_) ->
error('TODO').
t_max_size(_) ->
error('TODO').

View File

@ -23,6 +23,13 @@
all() -> emqx_ct:all(?MODULE).
t_init(_) ->
error('TODO').
t_info(_) ->
error('TODO').
t_check(_) ->
Keepalive = emqx_keepalive:init(60),
?assertEqual(60, emqx_keepalive:info(interval, Keepalive)),

View File

@ -89,4 +89,23 @@ get_base_dir(Module) ->
get_base_dir() ->
get_base_dir(?MODULE).
t_start_listener(_) ->
error('TODO').
t_restart(_) ->
error('TODO').
t_restart_listener(_) ->
error('TODO').
t_stop_listener(_) ->
error('TODO').
t_stop(_) ->
error('TODO').
t_start(_) ->
error('TODO').

View File

@ -0,0 +1,76 @@
%%--------------------------------------------------------------------
%% Copyright (c) 2019 EMQ Technologies Co., Ltd. All Rights Reserved.
%%
%% Licensed under the Apache License, Version 2.0 (the "License");
%% you may not use this file except in compliance with the License.
%% You may obtain a copy of the License at
%%
%% http://www.apache.org/licenses/LICENSE-2.0
%%
%% Unless required by applicable law or agreed to in writing, software
%% distributed under the License is distributed on an "AS IS" BASIS,
%% WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
%% See the License for the specific language governing permissions and
%% limitations under the License.
%%--------------------------------------------------------------------
-module(emqx_logger_SUITE).
-compile(export_all).
-compile(nowarn_export_all).
-include_lib("eunit/include/eunit.hrl").
all() -> emqx_ct:all(?MODULE).
init_per_testcase(_TestCase, Config) ->
Config.
end_per_testcase(_TestCase, Config) ->
Config.
t_debug(_) ->
error('TODO').
t_info(_) ->
error('TODO').
t_warning(_) ->
error('TODO').
t_error(_) ->
error('TODO').
t_critical(_) ->
error('TODO').
t_set_proc_metadata(_) ->
error('TODO').
t_get_primary_log_level(_) ->
error('TODO').
t_set_primary_log_level(_) ->
error('TODO').
t_get_log_handlers(_) ->
error('TODO').
t_get_log_handler(_) ->
error('TODO').
t_set_log_handler_level(_) ->
error('TODO').
t_set_log_level(_) ->
error('TODO').
t_parse_transform(_) ->
error('TODO').
t_set_metadata_peername(_) ->
error('TODO').
t_set_metadata_clientid(_) ->
error('TODO').

View File

@ -91,6 +91,9 @@ t_undefined_headers(_) ->
?assertEqual(1, emqx_message:get_header(a, Msg1)),
Msg2 = emqx_message:set_header(c, 3, Msg),
?assertEqual(3, emqx_message:get_header(c, Msg2)).
t_remove_header(_) ->
error('TODO').
t_format(_) ->
Msg = emqx_message:make(<<"clientid">>, <<"topic">>, <<"payload">>),
@ -102,7 +105,7 @@ t_format(_) ->
},
io:format("~s~n", [emqx_message:format(Msg1)]).
t_expired(_) ->
t_is_expired(_) ->
Msg = emqx_message:make(<<"clientid">>, <<"topic">>, <<"payload">>),
?assertNot(emqx_message:is_expired(Msg)),
Msg1 = emqx_message:set_headers(#{'Message-Expiry-Interval' => 1}, Msg),
@ -115,6 +118,10 @@ t_expired(_) ->
Msg2 = emqx_message:update_expiry(Msg1),
?assertEqual(1, emqx_message:get_header('Message-Expiry-Interval', Msg2)).
t_to_list(_) ->
error('TODO').
t_to_packet(_) ->
Pkt = #mqtt_packet{header = #mqtt_packet_header{type = ?PUBLISH,
qos = ?QOS_0,
@ -139,4 +146,16 @@ t_to_map(_) ->
{timestamp, emqx_message:timestamp(Msg)}],
?assertEqual(List, emqx_message:to_list(Msg)),
?assertEqual(maps:from_list(List), emqx_message:to_map(Msg)).
t_update_expiry(_) ->
error('TODO').
t_set_header(_) ->
error('TODO').
t_set_flag(_) ->
error('TODO').
t_set_headers(_) ->
error('TODO').

View File

@ -24,6 +24,21 @@
all() -> emqx_ct:all(?MODULE).
t_val(_) ->
error('TODO').
t_dec(_) ->
error('TODO').
t_set(_) ->
error('TODO').
t_commit(_) ->
error('TODO').
t_inc(_) ->
error('TODO').
t_new(_) ->
with_metrics_server(
fun() ->

View File

@ -0,0 +1,46 @@
%%--------------------------------------------------------------------
%% Copyright (c) 2019 EMQ Technologies Co., Ltd. All Rights Reserved.
%%
%% Licensed under the Apache License, Version 2.0 (the "License");
%% you may not use this file except in compliance with the License.
%% You may obtain a copy of the License at
%%
%% http://www.apache.org/licenses/LICENSE-2.0
%%
%% Unless required by applicable law or agreed to in writing, software
%% distributed under the License is distributed on an "AS IS" BASIS,
%% WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
%% See the License for the specific language governing permissions and
%% limitations under the License.
%%--------------------------------------------------------------------
-module(emqx_mod_acl_internal_SUITE).
-compile(export_all).
-compile(nowarn_export_all).
-include_lib("eunit/include/eunit.hrl").
all() -> emqx_ct:all(?MODULE).
init_per_testcase(_TestCase, Config) ->
Config.
end_per_testcase(_TestCase, Config) ->
Config.
t_load(_) ->
error('TODO').
t_unload(_) ->
error('TODO').
t_all_rules(_) ->
error('TODO').
t_check_acl(_) ->
error('TODO').
t_reload_acl(_) ->
error('TODO').

View File

@ -0,0 +1,44 @@
%%--------------------------------------------------------------------
%% Copyright (c) 2019 EMQ Technologies Co., Ltd. All Rights Reserved.
%%
%% Licensed under the Apache License, Version 2.0 (the "License");
%% you may not use this file except in compliance with the License.
%% You may obtain a copy of the License at
%%
%% http://www.apache.org/licenses/LICENSE-2.0
%%
%% Unless required by applicable law or agreed to in writing, software
%% distributed under the License is distributed on an "AS IS" BASIS,
%% WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
%% See the License for the specific language governing permissions and
%% limitations under the License.
%%--------------------------------------------------------------------
-module(emqx_mod_presence_SUITE).
-compile(export_all).
-compile(nowarn_export_all).
-include_lib("eunit/include/eunit.hrl").
all() -> emqx_ct:all(?MODULE).
init_per_testcase(_TestCase, Config) ->
Config.
end_per_testcase(_TestCase, Config) ->
Config.
t_load(_) ->
error('TODO').
t_unload(_) ->
error('TODO').
t_on_client_connected(_) ->
error('TODO').
t_on_client_disconnected(_) ->
error('TODO').

View File

@ -0,0 +1,46 @@
%%--------------------------------------------------------------------
%% Copyright (c) 2019 EMQ Technologies Co., Ltd. All Rights Reserved.
%%
%% Licensed under the Apache License, Version 2.0 (the "License");
%% you may not use this file except in compliance with the License.
%% You may obtain a copy of the License at
%%
%% http://www.apache.org/licenses/LICENSE-2.0
%%
%% Unless required by applicable law or agreed to in writing, software
%% distributed under the License is distributed on an "AS IS" BASIS,
%% WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
%% See the License for the specific language governing permissions and
%% limitations under the License.
%%--------------------------------------------------------------------
-module(emqx_mod_rewrite_SUITE).
-compile(export_all).
-compile(nowarn_export_all).
-include_lib("eunit/include/eunit.hrl").
all() -> emqx_ct:all(?MODULE).
init_per_testcase(_TestCase, Config) ->
Config.
end_per_testcase(_TestCase, Config) ->
Config.
t_load(_) ->
error('TODO').
t_rewrite_subscribe(_) ->
error('TODO').
t_rewrite_unsubscribe(_) ->
error('TODO').
t_rewrite_publish(_) ->
error('TODO').
t_unload(_) ->
error('TODO').

View File

@ -0,0 +1,40 @@
%%--------------------------------------------------------------------
%% Copyright (c) 2019 EMQ Technologies Co., Ltd. All Rights Reserved.
%%
%% Licensed under the Apache License, Version 2.0 (the "License");
%% you may not use this file except in compliance with the License.
%% You may obtain a copy of the License at
%%
%% http://www.apache.org/licenses/LICENSE-2.0
%%
%% Unless required by applicable law or agreed to in writing, software
%% distributed under the License is distributed on an "AS IS" BASIS,
%% WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
%% See the License for the specific language governing permissions and
%% limitations under the License.
%%--------------------------------------------------------------------
-module(emqx_mod_subscription_SUITE).
-compile(export_all).
-compile(nowarn_export_all).
-include_lib("eunit/include/eunit.hrl").
all() -> emqx_ct:all(?MODULE).
init_per_testcase(_TestCase, Config) ->
Config.
end_per_testcase(_TestCase, Config) ->
Config.
t_load(_) ->
error('TODO').
t_on_client_connected(_) ->
error('TODO').
t_unload(_) ->
error('TODO').

View File

@ -52,6 +52,13 @@ end_per_suite(_Config) ->
%% Test cases
%%--------------------------------------------------------------------
t_unload(_) ->
error('TODO').
t_load(_) ->
error('TODO').
%% Test case for emqx_mod_presence
t_mod_presence(_) ->
ok = emqx_mod_presence:load([{qos, ?QOS_1}]),

View File

@ -24,6 +24,14 @@
all() -> emqx_ct:all(?MODULE).
t_get_caps(_) ->
error('TODO').
t_default(_) ->
error('TODO').
t_check_pub(_) ->
PubCaps = #{max_qos_allowed => ?QOS_1,
retain_available => false

View File

@ -78,3 +78,12 @@ t_validate_value(_) ->
foreach_prop(Fun) ->
lists:foreach(Fun, maps:to_list(emqx_mqtt_props:all())).
t_all(_) ->
error('TODO').
t_set(_) ->
error('TODO').
t_get(_) ->
error('TODO').

View File

@ -28,6 +28,25 @@
all() -> emqx_ct:all(?MODULE).
t_init(_) ->
error('TODO').
t_is_empty(_) ->
error('TODO').
t_len(_) ->
error('TODO').
t_max_len(_) ->
error('TODO').
t_dropped(_) ->
error('TODO').
t_stats(_) ->
error('TODO').
t_in(_) ->
Opts = #{max_len => 5, store_qos0 => true},
Q = ?Q:init(Opts),

View File

@ -41,4 +41,8 @@ t_check(_) ->
?assertEqual(ok, emqx_oom:check(Oom)),
[self() ! {msg, I} || I <- lists:seq(1, 6)],
?assertEqual({shutdown, message_queue_too_long}, emqx_oom:check(Oom)).
t_info(_) ->
error('TODO').

View File

@ -29,6 +29,43 @@ init_per_suite(Config) ->
end_per_suite(_Config) ->
application:stop(os_mon).
t_get_cpu_check_interval(_) ->
error('TODO').
t_set_cpu_check_interval(_) ->
error('TODO').
t_get_cpu_high_watermark(_) ->
error('TODO').
t_set_cpu_high_watermark(_) ->
error('TODO').
t_get_cpu_low_watermark(_) ->
error('TODO').
t_set_cpu_low_watermark(_) ->
error('TODO').
t_get_mem_check_interval(_) ->
error('TODO').
t_set_mem_check_interval(_) ->
error('TODO').
t_get_sysmem_high_watermark(_) ->
error('TODO').
t_set_sysmem_high_watermark(_) ->
error('TODO').
t_get_procmem_high_watermark(_) ->
error('TODO').
t_set_procmem_high_watermark(_) ->
error('TODO').
t_api(_) ->
gen_event:swap_handler(alarm_handler, {emqx_alarm_handler, swap}, {alarm_handler, []}),

View File

@ -172,6 +172,10 @@ t_will_msg(_) ->
Msg = emqx_packet:will_msg(Pkt),
?assertEqual(<<"clientid">>, Msg#message.from),
?assertEqual(<<"topic">>, Msg#message.topic).
t_to_message(_) ->
error('TODO').
t_format(_) ->
io:format("~s", [emqx_packet:format(?CONNECT_PACKET(#mqtt_packet_connect{}))]),

View File

@ -23,6 +23,12 @@
all() -> emqx_ct:all(?MODULE).
t_get_counter(_) ->
error('TODO').
t_reset_counter(_) ->
error('TODO').
t_update_counter(_) ->
?assertEqual(undefined, emqx_pd:update_counter(bytes, 1)),
?assertEqual(1, emqx_pd:update_counter(bytes, 1)),

View File

@ -23,6 +23,7 @@
all() -> emqx_ct:all(?MODULE).
init_per_suite(Config) ->
%% Compile extra plugin code
@ -41,6 +42,23 @@ init_per_suite(Config) ->
emqx_ct_helpers:start_apps([], fun set_sepecial_cfg/1),
Config.
t_load_expand_plugin(_) ->
error('TODO').
t_list(_) ->
error('TODO').
t_find_plugin(_) ->
error('TODO').
t_unload(_) ->
error('TODO').
t_init(_) ->
error('TODO').
set_sepecial_cfg(_) ->
ExpandPath = filename:dirname(code:lib_dir(emqx_mini_plugin)),

View File

@ -23,6 +23,12 @@
all() -> emqx_ct:all(?MODULE).
t_new(_) ->
error('TODO').
t_count(_) ->
error('TODO').
t_monitor(_) ->
PMon = emqx_pmon:new(),
PMon1 = emqx_pmon:monitor(self(), PMon),
@ -31,6 +37,9 @@ t_monitor(_) ->
PMon2 = emqx_pmon:demonitor(self(), PMon2),
?assertEqual(0, emqx_pmon:count(PMon2)).
t_demonitor(_) ->
error('TODO').
t_find(_) ->
PMon = emqx_pmon:new(),
PMon1 = emqx_pmon:monitor(self(), val, PMon),
@ -51,3 +60,5 @@ t_erase(_) ->
?assertEqual([{self(), val}], Items),
?assertEqual(0, emqx_pmon:count(PMon3)).
t_erase_all(_) ->
error('TODO').

View File

@ -86,3 +86,6 @@ t_unexpected(_) ->
test_mfa() ->
lists:foldl(fun(X, Sum) -> X + Sum end, 0, [1,2,3,4,5]).
t_async_submit(_) ->
error('TODO').

View File

@ -26,6 +26,49 @@
all() -> emqx_ct:all(?SUITE).
t_is_queue(_) ->
error('TODO').
t_is_empty(_) ->
error('TODO').
t_to_list(_) ->
error('TODO').
t_from_list(_) ->
error('TODO').
t_in(_) ->
error('TODO').
t_out_p(_) ->
error('TODO').
t_join(_) ->
error('TODO').
t_filter(_) ->
error('TODO').
t_fold(_) ->
error('TODO').
t_highest(_) ->
error('TODO').
t_out(_) ->
error('TODO').
t_len(_) ->
error('TODO').
t_plen(_) ->
error('TODO').
t_new(_) ->
error('TODO').
t_priority_queue_plen(_) ->
Q = ?PQ:new(),
0 = ?PQ:plen(0, Q),

View File

@ -25,6 +25,25 @@
all() -> emqx_ct:all(?MODULE).
t_name(_) ->
error('TODO').
t_text(_) ->
error('TODO').
t_mqtt_frame_error(_) ->
error('TODO').
t_connack_error(_) ->
error('TODO').
t_compat(_) ->
error('TODO').
t_formalized(_) ->
error('TODO').
t_prop_name_text(_) ->
?assert(proper:quickcheck(prop_name_text(), prop_name_text(opts))).

View File

@ -45,6 +45,24 @@ t_mnesia(_) ->
%% for coverage
ok = emqx_router:mnesia(copy).
t_add_route(_) ->
error('TODO').
t_do_add_route(_) ->
error('TODO').
t_lookup_routes(_) ->
error('TODO').
t_delete_route(_) ->
error('TODO').
t_do_delete_route(_) ->
error('TODO').
t_topics(_) ->
error('TODO').
t_add_delete(_) ->
?R:add_route(<<"a/b/c">>),
?R:add_route(<<"a/b/c">>, node()),

View File

@ -0,0 +1,41 @@
%%--------------------------------------------------------------------
%% Copyright (c) 2019 EMQ Technologies Co., Ltd. All Rights Reserved.
%%
%% Licensed under the Apache License, Version 2.0 (the "License");
%% you may not use this file except in compliance with the License.
%% You may obtain a copy of the License at
%%
%% http://www.apache.org/licenses/LICENSE-2.0
%%
%% Unless required by applicable law or agreed to in writing, software
%% distributed under the License is distributed on an "AS IS" BASIS,
%% WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
%% See the License for the specific language governing permissions and
%% limitations under the License.
%%--------------------------------------------------------------------
-module(emqx_router_helper_SUITE).
-compile(export_all).
-compile(nowarn_export_all).
-include_lib("eunit/include/eunit.hrl").
all() -> emqx_ct:all(?MODULE).
init_per_testcase(_TestCase, Config) ->
Config.
end_per_testcase(_TestCase, Config) ->
Config.
t_mnesia(_) ->
error('TODO').
t_monitor(_) ->
error('TODO').
t_stats_fun(_) ->
error('TODO').

View File

@ -24,6 +24,17 @@
all() -> emqx_ct:all(?MODULE).
t_multicall(_) ->
error('TODO').
t_cast(_) ->
error('TODO').
t_call(_) ->
error('TODO').
t_prop_rpc(_) ->
ok = load(),
Opts = [{to_file, user}, {numtests, 10}],

View File

@ -29,6 +29,23 @@
all() -> emqx_ct:all(?MODULE).
t_currval(_) ->
error('TODO').
t_delete(_) ->
error('TODO').
t_create(_) ->
error('TODO').
t_reclaim(_) ->
error('TODO').
t_nextval(_) ->
error('TODO').
t_generate(_) ->
ok = emqx_sequence:create(seqtab),
?assertEqual(0, currval(seqtab, key)),

View File

@ -38,6 +38,21 @@ init_per_suite(Config) ->
end_per_suite(_Config) ->
emqx_ct_helpers:stop_apps([]).
t_is_ack_required(_) ->
error('TODO').
t_maybe_nack_dropped(_) ->
error('TODO').
t_nack_no_connection(_) ->
error('TODO').
t_maybe_ack(_) ->
error('TODO').
t_subscribers(_) ->
error('TODO').
t_random_basic(_) ->
ok = ensure_config(random),
@ -223,6 +238,16 @@ last_message(ExpectedPayload, Pids) ->
after 100 ->
<<"not yet?">>
end.
t_dispatch(_) ->
error('TODO').
t_unsubscribe(_) ->
error('TODO').
t_subscribe(_) ->
error('TODO').
%%--------------------------------------------------------------------
%% help functions

View File

@ -23,6 +23,19 @@
all() -> emqx_ct:all(?MODULE).
t_statsfun(_) ->
error('TODO').
t_getstats(_) ->
error('TODO').
t_getstat(_) ->
error('TODO').
t_setstat(_) ->
error('TODO').
t_get_state(_) ->
with_proc(fun() ->
SetConnsCount = emqx_stats:statsfun('connections.count'),

View File

@ -42,6 +42,28 @@ end_per_suite(_Config) ->
application:unload(emqx),
ok = emqx_logger:set_log_level(error),
ok.
t_version(_) ->
error('TODO').
t_sysdescr(_) ->
error('TODO').
t_uptime(_) ->
error('TODO').
t_datetime(_) ->
error('TODO').
t_sys_interval(_) ->
error('TODO').
t_sys_heatbeat_interval(_) ->
error('TODO').
t_info(_) ->
error('TODO').
t_prop_sys(_) ->
Opts = [{numtests, 100}, {to_file, user}],

View File

@ -230,3 +230,6 @@ bench(Case, Fun, Args) ->
ct:pal("Time consumed by ~s: ~.3f(us)~nCall ~s per second: ~w",
[Case, Time/?N, Case, (?N * 1000000) div Time]).
t_match(_) ->
error('TODO').

View File

@ -32,6 +32,7 @@ init_per_suite(Config) ->
end_per_suite(_Config) ->
emqx_ct_helpers:stop_apps([]).
t_start_traces(_Config) ->
{ok, T} = emqtt:start_link([{host, "localhost"},
@ -80,3 +81,19 @@ t_start_traces(_Config) ->
emqtt:disconnect(T),
emqx_logger:set_log_level(warning).
t_start_trace(_) ->
error('TODO').
t_stop_trace(_) ->
error('TODO').
t_lookup_traces(_) ->
error('TODO').
t_trace(_) ->
error('TODO').

View File

@ -38,6 +38,18 @@ init_per_suite(Config) ->
end_per_suite(_Config) ->
application:stop(sasl).
t_get_process_high_watermark(_) ->
error('TODO').
t_set_process_high_watermark(_) ->
error('TODO').
t_get_process_low_watermark(_) ->
error('TODO').
t_set_process_low_watermark(_) ->
error('TODO').
t_api(_) ->
meck:new(alarm_handler, [passthrough, no_history]),