Skip to content

Commit e0fb1b3

Browse files
committed
Clean up test code
1 parent 460dbee commit e0fb1b3

15 files changed

+79
-338
lines changed

deps/rabbit/test/amqp_client_SUITE.erl

Lines changed: 11 additions & 124 deletions
Original file line numberDiff line numberDiff line change
@@ -250,108 +250,6 @@ end_per_group(_, Config) ->
250250
rabbit_ct_client_helpers:teardown_steps() ++
251251
rabbit_ct_broker_helpers:teardown_steps()).
252252

253-
init_per_testcase(T, Config)
254-
when T =:= message_headers_conversion orelse
255-
T =:= roundtrip_with_drain_quorum_queue orelse
256-
T =:= drain_many_quorum_queue orelse
257-
T =:= timed_get_quorum_queue orelse
258-
T =:= available_messages_quorum_queue ->
259-
case rabbit_ct_broker_helpers:enable_feature_flag(Config, 'rabbitmq_4.0.0') of
260-
ok ->
261-
rabbit_ct_helpers:testcase_started(Config, T);
262-
_ ->
263-
{skip, "Receiving with drain from quorum queues in credit API v1 have a known "
264-
"bug that they reply with send_drained before delivering the message."}
265-
end;
266-
init_per_testcase(single_active_consumer_drain_quorum_queue = T, Config) ->
267-
case rabbit_ct_broker_helpers:enable_feature_flag(Config, 'rabbitmq_4.0.0') of
268-
ok ->
269-
rabbit_ct_helpers:testcase_started(Config, T);
270-
_ ->
271-
{skip, "Draining a SAC inactive quorum queue consumer with credit API v1 "
272-
"is known to be unsupported."}
273-
end;
274-
init_per_testcase(T, Config)
275-
when T =:= incoming_window_closed_close_link orelse
276-
T =:= incoming_window_closed_rabbitmq_internal_flow_classic_queue orelse
277-
T =:= incoming_window_closed_rabbitmq_internal_flow_quorum_queue orelse
278-
T =:= tcp_back_pressure_rabbitmq_internal_flow_classic_queue orelse
279-
T =:= tcp_back_pressure_rabbitmq_internal_flow_quorum_queue ->
280-
%% The new RabbitMQ internal flow control
281-
%% writer proc <- session proc <- queue proc
282-
%% is only available with credit API v2.
283-
case rabbit_ct_broker_helpers:enable_feature_flag(Config, 'rabbitmq_4.0.0') of
284-
ok ->
285-
rabbit_ct_helpers:testcase_started(Config, T);
286-
_ ->
287-
{skip, "Feature flag rabbitmq_4.0.0 is disabled"}
288-
end;
289-
init_per_testcase(T, Config)
290-
when T =:= modified_quorum_queue orelse
291-
T =:= modified_dead_letter_headers_exchange orelse
292-
T =:= modified_dead_letter_history ->
293-
case rabbit_ct_broker_helpers:enable_feature_flag(Config, 'rabbitmq_4.0.0') of
294-
ok ->
295-
rabbit_ct_helpers:testcase_started(Config, T);
296-
_ ->
297-
{skip, "Feature flag rabbitmq_4.0.0 is disabled, but needed for "
298-
"the new #modify{} command being sent to quorum queues."}
299-
end;
300-
init_per_testcase(T, Config)
301-
when T =:= detach_requeues_one_session_classic_queue orelse
302-
T =:= detach_requeues_drop_head_classic_queue orelse
303-
T =:= detach_requeues_two_connections_classic_queue orelse
304-
T =:= single_active_consumer_classic_queue ->
305-
%% Cancel API v2 reuses feature flag rabbitmq_4.0.0.
306-
%% In 3.13, with cancel API v1, when a receiver detaches with unacked messages, these messages
307-
%% will remain unacked and unacked message state will be left behind in the server session
308-
%% process state.
309-
%% In contrast, cancel API v2 in 4.x will requeue any unacked messages if the receiver detaches.
310-
%% We skip the single active consumer tests because these test cases assume that detaching a
311-
%% receiver link will requeue unacked messages.
312-
case rabbit_ct_broker_helpers:enable_feature_flag(Config, 'rabbitmq_4.0.0') of
313-
ok ->
314-
rabbit_ct_helpers:testcase_started(Config, T);
315-
_ ->
316-
{skip, "Cancel API v2 is disabled due to feature flag rabbitmq_4.0.0 being disabled."}
317-
end;
318-
init_per_testcase(T, Config)
319-
when T =:= detach_requeues_one_session_quorum_queue orelse
320-
T =:= single_active_consumer_quorum_queue orelse
321-
T =:= detach_requeues_two_connections_quorum_queue ->
322-
%% Feature flag rabbitmq_4.0.0 enables the consumer removal API.
323-
case rabbit_ct_broker_helpers:enable_feature_flag(Config, 'rabbitmq_4.0.0') of
324-
ok ->
325-
rabbit_ct_helpers:testcase_started(Config, T);
326-
Skip ->
327-
Skip
328-
end;
329-
init_per_testcase(T, Config)
330-
when T =:= leader_transfer_quorum_queue_credit_single orelse
331-
T =:= leader_transfer_quorum_queue_credit_batches orelse
332-
T =:= async_notify_unsettled_classic_queue orelse
333-
T =:= leader_transfer_stream_credit_single orelse
334-
T =:= dead_letter_into_stream orelse
335-
T =:= classic_queue_on_new_node orelse
336-
T =:= leader_transfer_quorum_queue_send orelse
337-
T =:= last_queue_confirms orelse
338-
T =:= leader_transfer_stream_credit_batches orelse
339-
T =:= leader_transfer_stream_send ->
340-
%% These test cases flake with feature flag 'rabbitmq_4.0.0' disabled.
341-
case rabbit_ct_broker_helpers:enable_feature_flag(Config, 'rabbitmq_4.0.0') of
342-
ok ->
343-
rabbit_ct_helpers:testcase_started(Config, T);
344-
Skip ->
345-
Skip
346-
end;
347-
init_per_testcase(T = immutable_bare_message, Config) ->
348-
case rabbit_ct_broker_helpers:enable_feature_flag(Config, 'rabbitmq_4.0.0') of
349-
ok ->
350-
rabbit_ct_helpers:testcase_started(Config, T);
351-
_ ->
352-
{skip, "RabbitMQ is known to wrongfully modify the bare message with feature "
353-
"flag rabbitmq_4.0.0 disabled"}
354-
end;
355253
init_per_testcase(T = dead_letter_reject, Config) ->
356254
case rabbit_ct_broker_helpers:enable_feature_flag(Config, message_containers_deaths_v2) of
357255
ok ->
@@ -3676,10 +3574,6 @@ async_notify_settled_stream(Config) ->
36763574
async_notify(settled, <<"stream">>, Config).
36773575

36783576
async_notify_unsettled_classic_queue(Config) ->
3679-
%% This test flakes with feature flag 'rabbitmq_4.0.0' disabled.
3680-
%% Link flow control in classic queues with credit API v1 is known to be broken:
3681-
%% https://github.com/rabbitmq/rabbitmq-server/issues/2597
3682-
ok = rabbit_ct_broker_helpers:enable_feature_flag(Config, 'rabbitmq_4.0.0'),
36833577
async_notify(unsettled, <<"classic">>, Config).
36843578

36853579
async_notify_unsettled_quorum_queue(Config) ->
@@ -3905,25 +3799,18 @@ queue_and_client_different_nodes(QueueLeaderNode, ClientNode, QueueType, Config)
39053799
true,
39063800
accepted),
39073801

3908-
case rpc(Config, rabbit_feature_flags, is_enabled, ['rabbitmq_4.0.0']) of
3909-
true ->
3910-
%% Send another message and drain.
3911-
Tag = <<"tag">>,
3912-
Body = <<"body">>,
3913-
ok = amqp10_client:send_msg(Sender, amqp10_msg:new(Tag, Body, false)),
3914-
ok = wait_for_accepted(Tag),
3915-
ok = amqp10_client:flow_link_credit(Receiver, 999, never, true),
3916-
[Msg] = receive_messages(Receiver, 1),
3917-
?assertEqual([Body], amqp10_msg:body(Msg)),
3918-
receive {amqp10_event, {link, Receiver, credit_exhausted}} -> ok
3919-
after 30000 -> ct:fail("expected credit_exhausted")
3920-
end,
3921-
ok = amqp10_client:accept_msg(Receiver, Msg);
3922-
false ->
3923-
ct:pal("Both quorum queues and classic queues in credit API v1
3924-
have a known bug that they reply with send_drained
3925-
before delivering the message.")
3802+
%% Send another message and drain.
3803+
Tag = <<"tag">>,
3804+
Body = <<"body">>,
3805+
ok = amqp10_client:send_msg(Sender, amqp10_msg:new(Tag, Body, false)),
3806+
ok = wait_for_accepted(Tag),
3807+
ok = amqp10_client:flow_link_credit(Receiver, 999, never, true),
3808+
[Msg] = receive_messages(Receiver, 1),
3809+
?assertEqual([Body], amqp10_msg:body(Msg)),
3810+
receive {amqp10_event, {link, Receiver, credit_exhausted}} -> ok
3811+
after 30000 -> ct:fail("expected credit_exhausted")
39263812
end,
3813+
ok = amqp10_client:accept_msg(Receiver, Msg),
39273814

39283815
ExpectedReadyMsgs = 0,
39293816
?assertEqual(#'queue.delete_ok'{message_count = ExpectedReadyMsgs},

deps/rabbit/test/amqp_dotnet_SUITE.erl

Lines changed: 5 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -65,13 +65,11 @@ end_per_suite(Config) ->
6565
init_per_group(cluster_size_1, Config) ->
6666
Suffix = rabbit_ct_helpers:testcase_absname(Config, "", "-"),
6767
Config1 = rabbit_ct_helpers:set_config(Config, {rmq_nodename_suffix, Suffix}),
68-
Config2 = rabbit_ct_helpers:run_setup_steps(
69-
Config1,
70-
[fun build_dotnet_test_project/1] ++
71-
rabbit_ct_broker_helpers:setup_steps() ++
72-
rabbit_ct_client_helpers:setup_steps()),
73-
ok = rabbit_ct_broker_helpers:enable_feature_flag(Config2, 'rabbitmq_4.0.0'),
74-
Config2.
68+
rabbit_ct_helpers:run_setup_steps(
69+
Config1,
70+
[fun build_dotnet_test_project/1] ++
71+
rabbit_ct_broker_helpers:setup_steps() ++
72+
rabbit_ct_client_helpers:setup_steps()).
7573

7674
end_per_group(_, Config) ->
7775
rabbit_ct_helpers:run_teardown_steps(

deps/rabbit/test/amqp_jms_SUITE.erl

Lines changed: 5 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -77,13 +77,11 @@ init_per_group(cluster_size_1, Config) ->
7777
#{amqp_address_v1 => false}
7878
}]
7979
}),
80-
Config3 = rabbit_ct_helpers:run_setup_steps(
81-
Config2,
82-
[fun build_maven_test_project/1] ++
83-
rabbit_ct_broker_helpers:setup_steps() ++
84-
rabbit_ct_client_helpers:setup_steps()),
85-
ok = rabbit_ct_broker_helpers:enable_feature_flag(Config3, 'rabbitmq_4.0.0'),
86-
Config3.
80+
rabbit_ct_helpers:run_setup_steps(
81+
Config2,
82+
[fun build_maven_test_project/1] ++
83+
rabbit_ct_broker_helpers:setup_steps() ++
84+
rabbit_ct_client_helpers:setup_steps()).
8785

8886
end_per_group(_Group, Config) ->
8987
rabbit_ct_helpers:run_teardown_steps(

deps/rabbit/test/classic_queue_SUITE.erl

Lines changed: 1 addition & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -72,12 +72,7 @@ end_per_group(_, Config) ->
7272
rabbit_ct_broker_helpers:teardown_steps()).
7373

7474
init_per_testcase(T, Config) ->
75-
case rabbit_ct_broker_helpers:enable_feature_flag(Config, 'rabbitmq_4.0.0') of
76-
ok ->
77-
rabbit_ct_helpers:testcase_started(Config, T);
78-
Skip ->
79-
Skip
80-
end.
75+
rabbit_ct_helpers:testcase_started(Config, T).
8176

8277
%% -------------------------------------------------------------------
8378
%% Testcases.

deps/rabbit/test/dead_lettering_SUITE.erl

Lines changed: 0 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -184,14 +184,6 @@ init_per_testcase(T, Config)
184184
%% * stream is known to fail due to https://github.com/rabbitmq/rabbitmq-server/issues/11173
185185
ok = rabbit_ct_broker_helpers:enable_feature_flag(Config, message_containers_deaths_v2),
186186
init_per_testcase0(T, Config);
187-
init_per_testcase(T, Config)
188-
when T =:= dead_letter_headers_should_not_be_appended_for_republish ->
189-
case rabbit_ct_broker_helpers:enable_feature_flag(Config, 'rabbitmq_4.0.0') of
190-
ok ->
191-
init_per_testcase0(T, Config);
192-
_ ->
193-
{skip, "The expectations of this test don't match 3.13 behaviour"}
194-
end;
195187
init_per_testcase(Testcase, Config) ->
196188
init_per_testcase0(Testcase, Config).
197189

deps/rabbit/test/feature_flags_SUITE.erl

Lines changed: 0 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -1287,15 +1287,6 @@ activating_plugin_with_new_ff_enabled(Config) ->
12871287
ok.
12881288

12891289
enable_plugin_feature_flag_after_deactivating_plugin(Config) ->
1290-
RabbitMQ40Enabled = rabbit_ct_broker_helpers:is_feature_flag_enabled(
1291-
Config, 'rabbitmq_4.0.0'),
1292-
case RabbitMQ40Enabled of
1293-
true ->
1294-
ok;
1295-
false ->
1296-
throw({skip, "This test triggers a bug present in 3.13"})
1297-
end,
1298-
12991290
FFSubsysOk = is_feature_flag_subsystem_available(Config),
13001291

13011292
log_feature_flags_of_all_nodes(Config),
@@ -1326,15 +1317,6 @@ enable_plugin_feature_flag_after_deactivating_plugin(Config) ->
13261317
ok.
13271318

13281319
restart_node_with_unknown_enabled_feature_flag(Config) ->
1329-
RabbitMQ40Enabled = rabbit_ct_broker_helpers:is_feature_flag_enabled(
1330-
Config, 'rabbitmq_4.0.0'),
1331-
case RabbitMQ40Enabled of
1332-
true ->
1333-
ok;
1334-
false ->
1335-
throw({skip, "This test triggers a bug present in 3.13"})
1336-
end,
1337-
13381320
FFSubsysOk = is_feature_flag_subsystem_available(Config),
13391321

13401322
log_feature_flags_of_all_nodes(Config),

0 commit comments

Comments
 (0)