99
1010-include_lib (" common_test/include/ct.hrl" ).
1111-include_lib (" amqp_client/include/amqp_client.hrl" ).
12+ -include_lib (" stdlib/include/assert.hrl" ).
1213
1314-compile (export_all ).
1415
1516-define (CMD , 'Elixir.RabbitMQ.CLI.Ctl.Commands.DeleteShovelCommand' ).
1617
1718all () ->
1819 [
19- {group , non_parallel_tests }
20+ {group , non_parallel_tests },
21+ {group , cluster_size_2 }
2022 ].
2123
2224groups () ->
2325 [
2426 {non_parallel_tests , [], [
2527 delete_not_found ,
2628 delete
29+ ]},
30+ {cluster_size_2 , [], [
31+ clear_param_on_different_node
2732 ]}
2833 ].
2934
@@ -33,25 +38,31 @@ groups() ->
3338
3439init_per_suite (Config ) ->
3540 rabbit_ct_helpers :log_environment (),
41+ rabbit_ct_helpers :run_setup_steps (Config ).
42+
43+ end_per_suite (Config ) ->
44+ rabbit_ct_helpers :run_teardown_steps (Config ).
45+
46+ init_per_group (cluster_size_2 , Config ) ->
47+ init_per_multinode_group (cluster_size_2 , Config , 2 );
48+ init_per_group (Group , Config ) ->
49+ init_per_multinode_group (Group , Config , 1 ).
50+
51+ init_per_multinode_group (_Group , Config , NodeCount ) ->
52+ Suffix = rabbit_ct_helpers :testcase_absname (Config , " " , " -" ),
3653 Config1 = rabbit_ct_helpers :set_config (Config , [
37- {rmq_nodename_suffix , ? MODULE }
54+ {rmq_nodes_count , NodeCount },
55+ {rmq_nodename_suffix , Suffix }
3856 ]),
39- Config2 = rabbit_ct_helpers :run_setup_steps (Config1 ,
40- rabbit_ct_broker_helpers :setup_steps () ++
41- rabbit_ct_client_helpers :setup_steps ()),
42- Config2 .
57+ rabbit_ct_helpers :run_steps (Config1 ,
58+ rabbit_ct_broker_helpers :setup_steps () ++
59+ rabbit_ct_client_helpers :setup_steps ()).
4360
44- end_per_suite ( Config ) ->
45- rabbit_ct_helpers :run_teardown_steps (Config ,
61+ end_per_group ( _Group , Config ) ->
62+ rabbit_ct_helpers :run_steps (Config ,
4663 rabbit_ct_client_helpers :teardown_steps () ++
4764 rabbit_ct_broker_helpers :teardown_steps ()).
4865
49- init_per_group (_ , Config ) ->
50- Config .
51-
52- end_per_group (_ , Config ) ->
53- Config .
54-
5566init_per_testcase (Testcase , Config ) ->
5667 rabbit_ct_helpers :testcase_started (Config , Testcase ).
5768
@@ -76,3 +87,18 @@ delete(Config) ->
7687 ok = ? CMD :run ([<<" myshovel" >>], Opts ),
7788 [] = rabbit_ct_broker_helpers :rpc (Config , 0 , rabbit_shovel_status ,
7889 status , []).
90+ clear_param_on_different_node (Config ) ->
91+ shovel_test_utils :set_param (
92+ Config ,
93+ <<" myshovel" >>, [{<<" src-queue" >>, <<" src" >>},
94+ {<<" dest-queue" >>, <<" dest" >>}]),
95+ [A , B ] = rabbit_ct_broker_helpers :get_node_configs (Config , nodename ),
96+ [_ ] = rabbit_ct_broker_helpers :rpc (Config , A , rabbit_shovel_status ,
97+ status , []),
98+ [] = rabbit_ct_broker_helpers :rpc (Config , B , rabbit_shovel_status ,
99+ status , []),
100+ shovel_test_utils :clear_param (Config , B , <<" myshovel" >>),
101+ ? assertEqual ([], rabbit_ct_broker_helpers :rpc (Config , A , rabbit_shovel_status ,
102+ status , []), " Deleted shovel still reported on node A" ),
103+ ? assertEqual ([], rabbit_ct_broker_helpers :rpc (Config , B , rabbit_shovel_status ,
104+ status , []), " Deleted shovel still reported on node B" ).
0 commit comments