Просмотр исходного кода

Merge branch 'emq20' of github.com:emqtt/emqttd into emq20

Feng Lee 9 лет назад
Родитель
Сommit
323cd0e4a6
2 измененных файлов с 33 добавлено и 2 удалено
  1. 16 2
      src/emqttd_app.erl
  2. 17 0
      src/emqttd_ctl.erl

+ 16 - 2
src/emqttd_app.erl

@@ -159,8 +159,7 @@ load_mod({module, Name, Opts}) ->
 
 %% @doc Is module enabled?
 -spec(is_mod_enabled(Name :: atom()) -> boolean()).
-is_mod_enabled(Name) ->
-    lists:keyfind(Name, 2, gen_conf:list(emqttd, module)).
+is_mod_enabled(Name) -> lists:keyfind(Name, 2, gen_conf:list(emqttd, module)).
 
 %%--------------------------------------------------------------------
 %% Start Listeners
@@ -206,3 +205,18 @@ stop_listeners() -> lists:foreach(fun stop_listener/1, gen_conf:list(listener)).
 %% @private
 stop_listener({listener, Protocol, ListenOn, _Opts}) -> esockd:close(Protocol, ListenOn).
 
+-ifdef(TEST).
+-include_lib("eunit/include/eunit.hrl").
+merge_sockopts_test_() ->
+    Opts =  [{acceptors, 16}, {max_clients, 512}],
+    ?_assert(merge_sockopts(Opts) == [{sockopts, [binary, {packet, raw}, {reuseaddr, true},
+                    {backlog, 512}, {nodelay, true}]}, {acceptors, 16}, {max_clients, 512}]).
+
+load_all_mods_test_() ->
+    ?_assert(load_all_mods() == ok).
+
+is_mod_enabled_test_() ->
+    ?_assert(is_mod_enabled(presence) == {module, presence, [{qos, 0}]}),
+    ?_assert(is_mod_enabled(test) == false).
+
+-endif.

+ 17 - 0
src/emqttd_ctl.erl

@@ -133,3 +133,20 @@ noreply(State) ->
 next_seq(State = #state{seq = Seq}) ->
     State#state{seq = Seq + 1}.
 
+-ifdef(TEST).
+-include_lib("eunit/include/eunit.hrl").
+register_cmd_test_() ->
+    {setup, 
+        fun() ->
+            {ok, InitState} = emqttd_ctl:init([]),
+            InitState
+        end,
+        fun(State) ->
+            ok = emqttd_ctl:terminate(shutdown, State)
+        end,
+        fun(State = #state{seq = Seq}) -> 
+                emqttd_ctl:handle_cast({register_cmd, test0, {?MODULE, test0}, []}, State),
+                [?_assertMatch([{{0,test0},{?MODULE, test0}, []}], ets:lookup(?CMD_TAB, {Seq,test0}))]
+        end
+    }.
+-endif.