diff options
author | Matthew Sackman <matthew@rabbitmq.com> | 2011-01-26 16:36:15 +0000 |
---|---|---|
committer | Matthew Sackman <matthew@rabbitmq.com> | 2011-01-26 16:36:15 +0000 |
commit | c8f30537a924891f550484321411ba8b5d7d571f (patch) | |
tree | 951e62608835873aefd5061e1364cdb5060b7f07 | |
parent | 9d777623f8d063b45ca79e2c1567a73492b52979 (diff) | |
download | rabbitmq-server-c8f30537a924891f550484321411ba8b5d7d571f.tar.gz |
Make the supervisor2 delayed restart test suite passes again
-rw-r--r-- | src/test_sup.erl | 14 |
1 files changed, 8 insertions, 6 deletions
diff --git a/src/test_sup.erl b/src/test_sup.erl index 76be63d0..b4df1fd0 100644 --- a/src/test_sup.erl +++ b/src/test_sup.erl @@ -59,19 +59,21 @@ start_child() -> ping_child(SupPid) -> Ref = make_ref(), - get_child_pid(SupPid) ! {ping, Ref, self()}, + with_child_pid(SupPid, fun(ChildPid) -> ChildPid ! {ping, Ref, self()} end), receive {pong, Ref} -> ok after 1000 -> timeout end. exit_child(SupPid) -> - true = exit(get_child_pid(SupPid), abnormal), + with_child_pid(SupPid, fun(ChildPid) -> exit(ChildPid, abnormal) end), ok. -get_child_pid(SupPid) -> - [{_Id, ChildPid, worker, [test_sup]}] = - supervisor2:which_children(SupPid), - ChildPid. +with_child_pid(SupPid, Fun) -> + case supervisor2:which_children(SupPid) of + [{_Id, undefined, worker, [test_sup]}] -> ok; + [{_Id, ChildPid, worker, [test_sup]}] -> Fun(ChildPid); + [] -> ok + end. run_child() -> receive {ping, Ref, Pid} -> Pid ! {pong, Ref}, |