Skip to content

Commit 1068e3e

Browse files
Make maintenance mode tests that involve QQs conditional
(cherry picked from commit 848f94c)
1 parent c6d8abf commit 1068e3e

File tree

1 file changed

+41
-8
lines changed

1 file changed

+41
-8
lines changed

test/maintenance_mode_SUITE.erl

Lines changed: 41 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,8 @@
1515

1616
all() ->
1717
[
18-
{group, cluster_size_3}
18+
{group, cluster_size_3},
19+
{group, quorum_queues}
1920
].
2021

2122
groups() ->
@@ -24,9 +25,11 @@ groups() ->
2425
maintenance_mode_status,
2526
listener_suspension_status,
2627
client_connection_closure,
27-
classic_mirrored_queue_leadership_transfer,
28+
classic_mirrored_queue_leadership_transfer
29+
]},
30+
{quorum_queues, [], [
2831
quorum_queue_leadership_transfer
29-
]}
32+
]}
3033
].
3134

3235
%% -------------------------------------------------------------------
@@ -40,14 +43,44 @@ init_per_suite(Config) ->
4043
end_per_suite(Config) ->
4144
rabbit_ct_helpers:run_teardown_steps(Config).
4245

43-
init_per_group(cluster_size_3, Config) ->
46+
init_per_group(_Group, Config) ->
4447
rabbit_ct_helpers:set_config(Config, [
4548
{rmq_nodes_count, 3}
4649
]).
4750

4851
end_per_group(_, Config) ->
4952
Config.
5053

54+
init_per_testcase(quorum_queue_leadership_transfer = Testcase, Config) ->
55+
rabbit_ct_helpers:testcase_started(Config, Testcase),
56+
ClusterSize = ?config(rmq_nodes_count, Config),
57+
TestNumber = rabbit_ct_helpers:testcase_number(Config, ?MODULE, Testcase),
58+
Config1 = rabbit_ct_helpers:set_config(Config, [
59+
{rmq_nodes_clustered, true},
60+
{rmq_nodename_suffix, Testcase},
61+
{tcp_ports_base, {skip_n_nodes, TestNumber * ClusterSize}}
62+
]),
63+
Config2 = rabbit_ct_helpers:run_steps(
64+
Config1,
65+
rabbit_ct_broker_helpers:setup_steps() ++
66+
rabbit_ct_client_helpers:setup_steps()),
67+
MaintenanceModeFFEnabled = rabbit_ct_broker_helpers:enable_feature_flag(
68+
Config2, maintenance_mode_status),
69+
QuorumQueueFFEnabled = rabbit_ct_broker_helpers:enable_feature_flag(
70+
Config2, quorum_queue),
71+
case MaintenanceModeFFEnabled of
72+
ok ->
73+
case QuorumQueueFFEnabled of
74+
ok ->
75+
Config2;
76+
Skip ->
77+
end_per_testcase(Testcase, Config2),
78+
Skip
79+
end;
80+
Skip ->
81+
end_per_testcase(Testcase, Config2),
82+
Skip
83+
end;
5184
init_per_testcase(Testcase, Config) ->
5285
rabbit_ct_helpers:testcase_started(Config, Testcase),
5386
ClusterSize = ?config(rmq_nodes_count, Config),
@@ -62,10 +95,10 @@ init_per_testcase(Testcase, Config) ->
6295
rabbit_ct_broker_helpers:setup_steps() ++
6396
rabbit_ct_client_helpers:setup_steps() ++
6497
[fun rabbit_ct_broker_helpers:set_ha_policy_all/1]),
65-
FFEnabled = rabbit_ct_broker_helpers:enable_feature_flag(
66-
Config2,
67-
maintenance_mode_status),
68-
case FFEnabled of
98+
MaintenanceModeFFEnabled = rabbit_ct_broker_helpers:enable_feature_flag(
99+
Config2,
100+
maintenance_mode_status),
101+
case MaintenanceModeFFEnabled of
69102
ok ->
70103
Config2;
71104
Skip ->

0 commit comments

Comments
 (0)