diff options
author | Simon MacMullen <simon@rabbitmq.com> | 2014-09-18 14:24:10 +0100 |
---|---|---|
committer | Simon MacMullen <simon@rabbitmq.com> | 2014-09-18 14:24:10 +0100 |
commit | 877bd6f917cf9958a3151c693d001173a200d077 (patch) | |
tree | f1dee43166431a0ec11a2bfc30658d10f10e6905 /test | |
parent | 32ec2e6d1ca4880ea97318b00c62ee6eba574439 (diff) | |
parent | bff67bd67dd96a63715c645ab4fad9c2467a292c (diff) | |
download | rabbitmq-server-877bd6f917cf9958a3151c693d001173a200d077.tar.gz |
Merge in default
Diffstat (limited to 'test')
-rw-r--r-- | test/src/gm_soak_test.erl | 4 | ||||
-rw-r--r-- | test/src/gm_speed_test.erl | 4 | ||||
-rw-r--r-- | test/src/gm_tests.erl | 4 | ||||
-rw-r--r-- | test/src/mirrored_supervisor_tests.erl | 67 | ||||
-rw-r--r-- | test/src/mirrored_supervisor_tests_gs.erl | 66 |
5 files changed, 86 insertions, 59 deletions
diff --git a/test/src/gm_soak_test.erl b/test/src/gm_soak_test.erl index c9a25522..90b94e42 100644 --- a/test/src/gm_soak_test.erl +++ b/test/src/gm_soak_test.erl @@ -17,7 +17,7 @@ -module(gm_soak_test). -export([test/0]). --export([joined/2, members_changed/3, handle_msg/3, terminate/2]). +-export([joined/2, members_changed/3, handle_msg/3, handle_terminate/2]). -behaviour(gm). @@ -94,7 +94,7 @@ handle_msg([], From, {test_msg, Num}) -> end), ok. -terminate([], Reason) -> +handle_terminate([], Reason) -> io:format("Left ~p (~p)~n", [self(), Reason]), ok. diff --git a/test/src/gm_speed_test.erl b/test/src/gm_speed_test.erl index 41be6dd8..f2aedff6 100644 --- a/test/src/gm_speed_test.erl +++ b/test/src/gm_speed_test.erl @@ -17,7 +17,7 @@ -module(gm_speed_test). -export([test/3]). --export([joined/2, members_changed/3, handle_msg/3, terminate/2]). +-export([joined/2, members_changed/3, handle_msg/3, handle_terminate/2]). -export([wile_e_coyote/2]). -behaviour(gm). @@ -37,7 +37,7 @@ handle_msg(Owner, _From, ping) -> Owner ! ping, ok. -terminate(Owner, _Reason) -> +handle_terminate(Owner, _Reason) -> Owner ! terminated, ok. diff --git a/test/src/gm_tests.erl b/test/src/gm_tests.erl index cae2164b..db552ce7 100644 --- a/test/src/gm_tests.erl +++ b/test/src/gm_tests.erl @@ -22,7 +22,7 @@ test_member_death/0, test_receive_in_order/0, all_tests/0]). --export([joined/2, members_changed/3, handle_msg/3, terminate/2]). +-export([joined/2, members_changed/3, handle_msg/3, handle_terminate/2]). -behaviour(gm). @@ -48,7 +48,7 @@ handle_msg(Pid, From, Msg) -> Pid ! {msg, self(), From, Msg}, ok. -terminate(Pid, Reason) -> +handle_terminate(Pid, Reason) -> Pid ! {termination, self(), Reason}, ok. diff --git a/test/src/mirrored_supervisor_tests.erl b/test/src/mirrored_supervisor_tests.erl index 26f59e01..bf7d2e55 100644 --- a/test/src/mirrored_supervisor_tests.erl +++ b/test/src/mirrored_supervisor_tests.erl @@ -16,15 +16,14 @@ -module(mirrored_supervisor_tests). --compile([export_all]). +-export([all_tests/0]). --export([init/1, handle_call/3, handle_info/2, terminate/2, code_change/3, - handle_cast/2]). +-export([init/1]). --behaviour(gen_server). -behaviour(mirrored_supervisor). --define(MS, mirrored_supervisor). +-define(MS, mirrored_supervisor). +-define(SERVER, mirrored_supervisor_tests_gs). %% --------------------------------------------------------------------------- %% Functional tests @@ -176,14 +175,14 @@ test_start_idempotence() -> test_unsupported() -> try ?MS:start_link({global, foo}, get_group(group), fun tx_fun/1, ?MODULE, - {sup, one_for_one, []}), + {one_for_one, []}), exit(no_global) catch error:badarg -> ok end, try ?MS:start_link({local, foo}, get_group(group), fun tx_fun/1, ?MODULE, - {sup, simple_one_for_one, []}), + {simple_one_for_one, []}), exit(no_sofo) catch error:badarg -> ok @@ -193,7 +192,7 @@ test_unsupported() -> %% Just test we don't blow up test_ignore() -> ?MS:start_link({local, foo}, get_group(group), fun tx_fun/1, ?MODULE, - {sup, fake_strategy_for_ignore, []}), + {fake_strategy_for_ignore, []}), passed. test_startup_failure() -> @@ -203,7 +202,7 @@ test_startup_failure() -> test_startup_failure(Fail) -> process_flag(trap_exit, true), ?MS:start_link(get_group(group), fun tx_fun/1, ?MODULE, - {sup, one_for_one, [childspec(Fail)]}), + {one_for_one, [childspec(Fail)]}), receive {'EXIT', _, shutdown} -> ok @@ -237,23 +236,14 @@ start_sup(Name, Group) -> start_sup0(anon, Group, ChildSpecs) -> ?MS:start_link(Group, fun tx_fun/1, ?MODULE, - {sup, one_for_one, ChildSpecs}); + {one_for_one, ChildSpecs}); start_sup0(Name, Group, ChildSpecs) -> ?MS:start_link({local, Name}, Group, fun tx_fun/1, ?MODULE, - {sup, one_for_one, ChildSpecs}). + {one_for_one, ChildSpecs}). childspec(Id) -> - {Id, {?MODULE, start_gs, [Id]}, transient, 16#ffffffff, worker, [?MODULE]}. - -start_gs(want_error) -> - {error, foo}; - -start_gs(want_exit) -> - exit(foo); - -start_gs(Id) -> - gen_server:start_link({local, Id}, ?MODULE, server, []). + {Id,{?SERVER, start_link, [Id]}, transient, 16#ffffffff, worker, [?MODULE]}. pid_of(Id) -> {received, Pid, ping} = call(Id, ping), @@ -309,38 +299,9 @@ kill_wait(Pid) -> end. %% --------------------------------------------------------------------------- -%% Dumb gen_server we can supervise -%% --------------------------------------------------------------------------- -init({sup, fake_strategy_for_ignore, _ChildSpecs}) -> +init({fake_strategy_for_ignore, _ChildSpecs}) -> ignore; -init({sup, Strategy, ChildSpecs}) -> - {ok, {{Strategy, 0, 1}, ChildSpecs}}; - -init(server) -> - {ok, state}. - -handle_call(Msg, _From, State) -> - die_if_my_supervisor_is_evil(), - {reply, {received, self(), Msg}, State}. - -handle_cast(_Msg, State) -> - {noreply, State}. - -handle_info(_Info, State) -> - {noreply, State}. - -terminate(_Reason, _State) -> - ok. - -code_change(_OldVsn, State, _Extra) -> - {ok, State}. - -die_if_my_supervisor_is_evil() -> - try lists:keysearch(self(), 2, ?MS:which_children(evil)) of - false -> ok; - _ -> exit(doooom) - catch - exit:{noproc, _} -> ok - end. +init({Strategy, ChildSpecs}) -> + {ok, {{Strategy, 0, 1}, ChildSpecs}}. diff --git a/test/src/mirrored_supervisor_tests_gs.erl b/test/src/mirrored_supervisor_tests_gs.erl new file mode 100644 index 00000000..12ed0d6f --- /dev/null +++ b/test/src/mirrored_supervisor_tests_gs.erl @@ -0,0 +1,66 @@ +%% The contents of this file are subject to the Mozilla Public License +%% Version 1.1 (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.mozilla.org/MPL/ +%% +%% Software distributed under the License is distributed on an "AS IS" +%% basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See the +%% License for the specific language governing rights and limitations +%% under the License. +%% +%% The Original Code is RabbitMQ. +%% +%% The Initial Developer of the Original Code is GoPivotal, Inc. +%% Copyright (c) 2011-2014 GoPivotal, Inc. All rights reserved. +%% + +-module(mirrored_supervisor_tests_gs). + +%% Dumb gen_server we can supervise + +-export([start_link/1]). + +-export([init/1, handle_call/3, handle_info/2, terminate/2, code_change/3, + handle_cast/2]). + +-behaviour(gen_server). + +-define(MS, mirrored_supervisor). + +start_link(want_error) -> + {error, foo}; + +start_link(want_exit) -> + exit(foo); + +start_link(Id) -> + gen_server:start_link({local, Id}, ?MODULE, [], []). + +%% --------------------------------------------------------------------------- + +init([]) -> + {ok, state}. + +handle_call(Msg, _From, State) -> + die_if_my_supervisor_is_evil(), + {reply, {received, self(), Msg}, State}. + +handle_cast(_Msg, State) -> + {noreply, State}. + +handle_info(_Info, State) -> + {noreply, State}. + +terminate(_Reason, _State) -> + ok. + +code_change(_OldVsn, State, _Extra) -> + {ok, State}. + +die_if_my_supervisor_is_evil() -> + try lists:keysearch(self(), 2, ?MS:which_children(evil)) of + false -> ok; + _ -> exit(doooom) + catch + exit:{noproc, _} -> ok + end. |