9
9
10
10
-include_lib (" common_test/include/ct.hrl" ).
11
11
-include_lib (" amqp_client/include/amqp_client.hrl" ).
12
+ -include_lib (" stdlib/include/assert.hrl" ).
12
13
13
14
-compile (export_all ).
14
15
15
16
-define (CMD , 'Elixir.RabbitMQ.CLI.Ctl.Commands.DeleteShovelCommand' ).
16
17
17
18
all () ->
18
19
[
19
- {group , non_parallel_tests }
20
+ {group , non_parallel_tests },
21
+ {group , cluster_size_2 }
20
22
].
21
23
22
24
groups () ->
23
25
[
24
26
{non_parallel_tests , [], [
25
27
delete_not_found ,
26
28
delete
29
+ ]},
30
+ {cluster_size_2 , [], [
31
+ clear_param_on_different_node
27
32
]}
28
33
].
29
34
@@ -33,25 +38,31 @@ groups() ->
33
38
34
39
init_per_suite (Config ) ->
35
40
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 , " " , " -" ),
36
53
Config1 = rabbit_ct_helpers :set_config (Config , [
37
- {rmq_nodename_suffix , ? MODULE }
54
+ {rmq_nodes_count , NodeCount },
55
+ {rmq_nodename_suffix , Suffix }
38
56
]),
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 ()).
43
60
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 ,
46
63
rabbit_ct_client_helpers :teardown_steps () ++
47
64
rabbit_ct_broker_helpers :teardown_steps ()).
48
65
49
- init_per_group (_ , Config ) ->
50
- Config .
51
-
52
- end_per_group (_ , Config ) ->
53
- Config .
54
-
55
66
init_per_testcase (Testcase , Config ) ->
56
67
rabbit_ct_helpers :testcase_started (Config , Testcase ).
57
68
@@ -76,3 +87,18 @@ delete(Config) ->
76
87
ok = ? CMD :run ([<<" myshovel" >>], Opts ),
77
88
[] = rabbit_ct_broker_helpers :rpc (Config , 0 , rabbit_shovel_status ,
78
89
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