1515
1616all () ->
1717 [
18- {group , cluster_size_3 }
18+ {group , cluster_size_3 },
19+ {group , quorum_queues }
1920 ].
2021
2122groups () ->
@@ -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) ->
4043end_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
4851end_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 ;
5184init_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