diff options
| author | Luke Bakken <lbakken@pivotal.io> | 2017-06-23 10:03:57 -0700 |
|---|---|---|
| committer | Luke Bakken <luke@bakken.io> | 2017-06-28 08:19:45 -0700 |
| commit | 20e0080aa3f1f4c3ee86054bfb71f4aacb9af714 (patch) | |
| tree | 1a3175cb9813dba52649977762b0dbc5f9cfed1e /test | |
| parent | 439cbf1389079d695e7b6e846b0f54a3892409ce (diff) | |
| download | rabbitmq-server-git-20e0080aa3f1f4c3ee86054bfb71f4aacb9af714.tar.gz | |
Add test skel to repro gh-427 in rabbitmq-management
Diffstat (limited to 'test')
| -rw-r--r-- | test/rabbit_core_metrics_gc_SUITE.erl | 57 |
1 files changed, 46 insertions, 11 deletions
diff --git a/test/rabbit_core_metrics_gc_SUITE.erl b/test/rabbit_core_metrics_gc_SUITE.erl index 0ef86717ac..79a40371ee 100644 --- a/test/rabbit_core_metrics_gc_SUITE.erl +++ b/test/rabbit_core_metrics_gc_SUITE.erl @@ -24,7 +24,8 @@ all() -> [ - {group, non_parallel_tests} + {group, non_parallel_tests}, + {group, cluster_tests} ]. groups() -> @@ -37,7 +38,8 @@ groups() -> gen_server2_metrics, consumer_metrics ] - } + }, + {cluster_tests, [], [cluster_queue_metrics]} ]. %% ------------------------------------------------------------------- @@ -52,7 +54,15 @@ merge_app_env(Config) -> {collect_statistics, fine} ]}). -init_per_suite(Config) -> +init_per_group(cluster_tests, Config) -> + Config1 = rabbit_ct_helpers:set_config(Config, [ + {rmq_nodename_suffix, cluster_tests}, + {rmq_nodes_count, 2} + ]), + rabbit_ct_helpers:run_setup_steps( + Config1, + [ fun merge_app_env/1 ] ++ rabbit_ct_broker_helpers:setup_steps()); +init_per_group(non_parallel_tests, Config) -> rabbit_ct_helpers:log_environment(), Config1 = rabbit_ct_helpers:set_config(Config, [ {rmq_nodename_suffix, ?MODULE} @@ -61,17 +71,11 @@ init_per_suite(Config) -> Config1, [ fun merge_app_env/1 ] ++ rabbit_ct_broker_helpers:setup_steps()). -end_per_suite(Config) -> +end_per_group(_, Config) -> rabbit_ct_helpers:run_teardown_steps( Config, rabbit_ct_broker_helpers:teardown_steps()). -init_per_group(_, Config) -> - Config. - -end_per_group(_, Config) -> - Config. - init_per_testcase(Testcase, Config) -> rabbit_ct_helpers:testcase_started(Config, Testcase), rabbit_ct_helpers:run_steps(Config, @@ -84,7 +88,7 @@ end_per_testcase(Testcase, Config) -> rabbit_ct_client_helpers:teardown_steps()). %% ------------------------------------------------------------------- -%% Testcases. +%% Single-node Testcases. %% ------------------------------------------------------------------- queue_metrics(Config) -> @@ -329,3 +333,34 @@ x(Name) -> #resource{ virtual_host = <<"/">>, kind = exchange, name = Name }. + +%% ------------------------------------------------------------------- +%% Cluster Testcases. +%% ------------------------------------------------------------------- + +cluster_queue_metrics(Config) -> + QueueName = <<"cluster_queue_metrics">>, + + A = rabbit_ct_broker_helpers:get_node_config(Config, 0, nodename), + Ch = rabbit_ct_client_helpers:open_channel(Config, A), + + amqp_channel:call(Ch, #'queue.declare'{queue = QueueName}), + amqp_channel:call(Ch, #'basic.publish'{routing_key = QueueName}, + #amqp_msg{payload = <<"hello">>}), + + % Create queue + % Publish message + % Apply policy + % Update policy to point to other node + % Synchronize + % Check ETS table for data + % ets:tab2list(queue_coarse_metrics). + NodeConfig = rabbit_ct_broker_helpers:get_node_config(Config, 0), + NodeName = ?config(nodename, NodeConfig), + Params = [NodeName], + Definition = [{<<"ha-mode">>, <<"nodes">>}, {<<"ha-params">>, Params}], + set_policy(Config, 0, <<"ha-policy-1">>, <<".*">>, queues, Definition), + + amqp_channel:call(Ch, #'queue.delete'{queue=QueueName}), + rabbit_ct_client_helpers:close_channel(Ch), + Config. |
