diff options
| author | Luke Bakken <luke@bakken.io> | 2020-04-27 15:34:04 +0000 |
|---|---|---|
| committer | Jean-Sébastien Pédron <jean-sebastien@rabbitmq.com> | 2020-05-12 15:24:53 +0200 |
| commit | a58b9cfe7f89843d9d80bbf9961d984a94b7eeee (patch) | |
| tree | 50b96ea7d84394053d368c58648805c8d75e2d17 /test | |
| parent | 776278c05cdf88b7561f828e794ab06083ca2b79 (diff) | |
| download | rabbitmq-server-git-a58b9cfe7f89843d9d80bbf9961d984a94b7eeee.tar.gz | |
Revert "Remove member_death test flake"
This reverts commit 598c14f76ff593f19faa0a01458273dc5b09197b.
Add a broadcast
Diffstat (limited to 'test')
| -rw-r--r-- | test/unit_gm_SUITE.erl | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/test/unit_gm_SUITE.erl b/test/unit_gm_SUITE.erl index 6724a767d2..a574753e8e 100644 --- a/test/unit_gm_SUITE.erl +++ b/test/unit_gm_SUITE.erl @@ -37,6 +37,7 @@ all() -> join_leave, broadcast, confirmed_broadcast, + member_death, receive_in_order, unexpected_msg, down_in_members_change @@ -73,6 +74,32 @@ broadcast(_Config) -> confirmed_broadcast(_Config) -> passed = do_broadcast(fun gm:confirmed_broadcast/2). +member_death(_Config) -> + passed = with_two_members( + fun (Pid, Pid2) -> + {ok, Pid3} = gm:start_link( + ?MODULE, ?MODULE, self(), + fun rabbit_misc:execute_mnesia_transaction/1), + passed = receive_joined(Pid3, [Pid, Pid2, Pid3], + timeout_joining_gm_group_3), + passed = receive_birth(Pid, Pid3, timeout_waiting_for_birth_3_1), + passed = receive_birth(Pid2, Pid3, timeout_waiting_for_birth_3_2), + + unlink(Pid3), + exit(Pid3, kill), + + %% Have to do some broadcasts to ensure that all members + %% find out about the death. + BFun = broadcast_fun(fun gm:confirmed_broadcast/2), + passed = BFun(Pid, Pid2), + passed = BFun(Pid, Pid2), + + passed = receive_death(Pid, Pid3, timeout_waiting_for_death_3_1), + passed = receive_death(Pid2, Pid3, timeout_waiting_for_death_3_2), + + passed + end). + receive_in_order(_Config) -> passed = with_two_members( fun (Pid, Pid2) -> |
