rabbitmq-server/deps/rabbitmq_management/test/clustering_SUITE.erl

Ignoring revisions in .git-blame-ignore-revs. Click here to bypass and see the normal blame view.

977 lines
36 KiB
Erlang
Raw Normal View History

%% This Source Code Form is subject to the terms of the Mozilla Public
%% License, v. 2.0. If a copy of the MPL was not distributed with this
%% file, You can obtain one at https://mozilla.org/MPL/2.0/.
Switch test suite to Common Test, fixes #233 Squashed commit of the following: commit b104a7f84474e247dfef27cd389d6fac554ab634 Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 23 18:14:28 2016 +0300 Finish migration to CT Note: this intentionally deletes several tests that depend on ETS table state and clash with "real" stats GC processes running in parallel. Some of them are covered in other test suites, e.g. rabbit-hole, others can only really be tested with a separate simulation test suite. Per discussion with the team. commit 7585883e0f9432fd3360d18d340bcf599ad8d51f Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 23 15:50:53 2016 +0300 Down to 3 failing tests commit 3243f0efed7033229803404a431c1c6404c25677 Author: Michael Klishin <michael@clojurewerkz.org> Date: Tue Jun 21 01:02:42 2016 +0300 Attempts to simplify a few tests for CT commit 997c2b3782b4ce38708658dc90883980a267a461 Merge: 122c7b7 0ce4f6b Author: Michael Klishin <michael@clojurewerkz.org> Date: Fri Jun 17 14:45:06 2016 +0300 Merge branch 'stable' into common_test commit 122c7b7116778e9aff244822933eaf95567dc59d Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 16 18:19:28 2016 +0300 Begin porting test_db_SUITE commit 872f3e82966999cebd8ba966daac9410badaca09 Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 16 13:54:34 2016 +0300 Makes clustering_SUITE pass commit c8d6c89bda6e7571877221ed6b2513e53b1ebc46 Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 16 03:48:54 2016 +0300 Towards clustering_SUITE commit 7fcb6c834039d6cdf15371ce8640f6dfd9bdf939 Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 16 02:59:24 2016 +0300 Initial clustering_SUITE test passes commit 11205579e86bad4563e027d025b94f0e57ee8386 Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 16 02:59:12 2016 +0300 Add mochiweb to test dependencies commit 895ff82e6e6567336c2ac56532f82427a2c4f705 Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 16 01:09:46 2016 +0300 Refactor commit 6d9200cc8516ee5ea0676fbb0e9b3c88fb2a40a7 Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 16 00:55:08 2016 +0300 open_unmanaged_connection/1 is now available in rabbit_ct_client_helpers commit 40d03cd2fa2a6bc1d4c7c4a1eeb332c5182e1317 Author: Michael Klishin <michael@clojurewerkz.org> Date: Wed Jun 15 23:51:31 2016 +0300 All http_SUITE tests now pass commit 81e08ef36a08884c02fabd51662018751035b5b6 Author: Michael Klishin <michael@clojurewerkz.org> Date: Wed Jun 15 17:12:27 2016 +0300 More tests pass with Common Test commit aaea771db14624df0db944b4c4d0eb42191fb961 Author: Michael Klishin <michael@clojurewerkz.org> Date: Tue Jun 14 17:41:09 2016 +0300 Continue adapting to Common Test commit 0a57f3256a828a835ce44ef02b2e93a3cfe34ccf Author: Michael Klishin <michael@clojurewerkz.org> Date: Tue Jun 14 15:28:19 2016 +0300 Begin moving test suite to Common Test
2016-06-24 18:27:05 +08:00
%%
%% Copyright (c) 2007-2025 Broadcom. All Rights Reserved. The term “Broadcom” refers to Broadcom Inc. and/or its subsidiaries. All rights reserved.
Switch test suite to Common Test, fixes #233 Squashed commit of the following: commit b104a7f84474e247dfef27cd389d6fac554ab634 Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 23 18:14:28 2016 +0300 Finish migration to CT Note: this intentionally deletes several tests that depend on ETS table state and clash with "real" stats GC processes running in parallel. Some of them are covered in other test suites, e.g. rabbit-hole, others can only really be tested with a separate simulation test suite. Per discussion with the team. commit 7585883e0f9432fd3360d18d340bcf599ad8d51f Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 23 15:50:53 2016 +0300 Down to 3 failing tests commit 3243f0efed7033229803404a431c1c6404c25677 Author: Michael Klishin <michael@clojurewerkz.org> Date: Tue Jun 21 01:02:42 2016 +0300 Attempts to simplify a few tests for CT commit 997c2b3782b4ce38708658dc90883980a267a461 Merge: 122c7b7 0ce4f6b Author: Michael Klishin <michael@clojurewerkz.org> Date: Fri Jun 17 14:45:06 2016 +0300 Merge branch 'stable' into common_test commit 122c7b7116778e9aff244822933eaf95567dc59d Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 16 18:19:28 2016 +0300 Begin porting test_db_SUITE commit 872f3e82966999cebd8ba966daac9410badaca09 Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 16 13:54:34 2016 +0300 Makes clustering_SUITE pass commit c8d6c89bda6e7571877221ed6b2513e53b1ebc46 Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 16 03:48:54 2016 +0300 Towards clustering_SUITE commit 7fcb6c834039d6cdf15371ce8640f6dfd9bdf939 Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 16 02:59:24 2016 +0300 Initial clustering_SUITE test passes commit 11205579e86bad4563e027d025b94f0e57ee8386 Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 16 02:59:12 2016 +0300 Add mochiweb to test dependencies commit 895ff82e6e6567336c2ac56532f82427a2c4f705 Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 16 01:09:46 2016 +0300 Refactor commit 6d9200cc8516ee5ea0676fbb0e9b3c88fb2a40a7 Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 16 00:55:08 2016 +0300 open_unmanaged_connection/1 is now available in rabbit_ct_client_helpers commit 40d03cd2fa2a6bc1d4c7c4a1eeb332c5182e1317 Author: Michael Klishin <michael@clojurewerkz.org> Date: Wed Jun 15 23:51:31 2016 +0300 All http_SUITE tests now pass commit 81e08ef36a08884c02fabd51662018751035b5b6 Author: Michael Klishin <michael@clojurewerkz.org> Date: Wed Jun 15 17:12:27 2016 +0300 More tests pass with Common Test commit aaea771db14624df0db944b4c4d0eb42191fb961 Author: Michael Klishin <michael@clojurewerkz.org> Date: Tue Jun 14 17:41:09 2016 +0300 Continue adapting to Common Test commit 0a57f3256a828a835ce44ef02b2e93a3cfe34ccf Author: Michael Klishin <michael@clojurewerkz.org> Date: Tue Jun 14 15:28:19 2016 +0300 Begin moving test suite to Common Test
2016-06-24 18:27:05 +08:00
%%
-module(clustering_SUITE).
Switch test suite to Common Test, fixes #233 Squashed commit of the following: commit b104a7f84474e247dfef27cd389d6fac554ab634 Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 23 18:14:28 2016 +0300 Finish migration to CT Note: this intentionally deletes several tests that depend on ETS table state and clash with "real" stats GC processes running in parallel. Some of them are covered in other test suites, e.g. rabbit-hole, others can only really be tested with a separate simulation test suite. Per discussion with the team. commit 7585883e0f9432fd3360d18d340bcf599ad8d51f Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 23 15:50:53 2016 +0300 Down to 3 failing tests commit 3243f0efed7033229803404a431c1c6404c25677 Author: Michael Klishin <michael@clojurewerkz.org> Date: Tue Jun 21 01:02:42 2016 +0300 Attempts to simplify a few tests for CT commit 997c2b3782b4ce38708658dc90883980a267a461 Merge: 122c7b7 0ce4f6b Author: Michael Klishin <michael@clojurewerkz.org> Date: Fri Jun 17 14:45:06 2016 +0300 Merge branch 'stable' into common_test commit 122c7b7116778e9aff244822933eaf95567dc59d Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 16 18:19:28 2016 +0300 Begin porting test_db_SUITE commit 872f3e82966999cebd8ba966daac9410badaca09 Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 16 13:54:34 2016 +0300 Makes clustering_SUITE pass commit c8d6c89bda6e7571877221ed6b2513e53b1ebc46 Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 16 03:48:54 2016 +0300 Towards clustering_SUITE commit 7fcb6c834039d6cdf15371ce8640f6dfd9bdf939 Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 16 02:59:24 2016 +0300 Initial clustering_SUITE test passes commit 11205579e86bad4563e027d025b94f0e57ee8386 Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 16 02:59:12 2016 +0300 Add mochiweb to test dependencies commit 895ff82e6e6567336c2ac56532f82427a2c4f705 Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 16 01:09:46 2016 +0300 Refactor commit 6d9200cc8516ee5ea0676fbb0e9b3c88fb2a40a7 Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 16 00:55:08 2016 +0300 open_unmanaged_connection/1 is now available in rabbit_ct_client_helpers commit 40d03cd2fa2a6bc1d4c7c4a1eeb332c5182e1317 Author: Michael Klishin <michael@clojurewerkz.org> Date: Wed Jun 15 23:51:31 2016 +0300 All http_SUITE tests now pass commit 81e08ef36a08884c02fabd51662018751035b5b6 Author: Michael Klishin <michael@clojurewerkz.org> Date: Wed Jun 15 17:12:27 2016 +0300 More tests pass with Common Test commit aaea771db14624df0db944b4c4d0eb42191fb961 Author: Michael Klishin <michael@clojurewerkz.org> Date: Tue Jun 14 17:41:09 2016 +0300 Continue adapting to Common Test commit 0a57f3256a828a835ce44ef02b2e93a3cfe34ccf Author: Michael Klishin <michael@clojurewerkz.org> Date: Tue Jun 14 15:28:19 2016 +0300 Begin moving test suite to Common Test
2016-06-24 18:27:05 +08:00
-include_lib("amqp_client/include/amqp_client.hrl").
Switch test suite to Common Test, fixes #233 Squashed commit of the following: commit b104a7f84474e247dfef27cd389d6fac554ab634 Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 23 18:14:28 2016 +0300 Finish migration to CT Note: this intentionally deletes several tests that depend on ETS table state and clash with "real" stats GC processes running in parallel. Some of them are covered in other test suites, e.g. rabbit-hole, others can only really be tested with a separate simulation test suite. Per discussion with the team. commit 7585883e0f9432fd3360d18d340bcf599ad8d51f Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 23 15:50:53 2016 +0300 Down to 3 failing tests commit 3243f0efed7033229803404a431c1c6404c25677 Author: Michael Klishin <michael@clojurewerkz.org> Date: Tue Jun 21 01:02:42 2016 +0300 Attempts to simplify a few tests for CT commit 997c2b3782b4ce38708658dc90883980a267a461 Merge: 122c7b7 0ce4f6b Author: Michael Klishin <michael@clojurewerkz.org> Date: Fri Jun 17 14:45:06 2016 +0300 Merge branch 'stable' into common_test commit 122c7b7116778e9aff244822933eaf95567dc59d Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 16 18:19:28 2016 +0300 Begin porting test_db_SUITE commit 872f3e82966999cebd8ba966daac9410badaca09 Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 16 13:54:34 2016 +0300 Makes clustering_SUITE pass commit c8d6c89bda6e7571877221ed6b2513e53b1ebc46 Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 16 03:48:54 2016 +0300 Towards clustering_SUITE commit 7fcb6c834039d6cdf15371ce8640f6dfd9bdf939 Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 16 02:59:24 2016 +0300 Initial clustering_SUITE test passes commit 11205579e86bad4563e027d025b94f0e57ee8386 Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 16 02:59:12 2016 +0300 Add mochiweb to test dependencies commit 895ff82e6e6567336c2ac56532f82427a2c4f705 Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 16 01:09:46 2016 +0300 Refactor commit 6d9200cc8516ee5ea0676fbb0e9b3c88fb2a40a7 Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 16 00:55:08 2016 +0300 open_unmanaged_connection/1 is now available in rabbit_ct_client_helpers commit 40d03cd2fa2a6bc1d4c7c4a1eeb332c5182e1317 Author: Michael Klishin <michael@clojurewerkz.org> Date: Wed Jun 15 23:51:31 2016 +0300 All http_SUITE tests now pass commit 81e08ef36a08884c02fabd51662018751035b5b6 Author: Michael Klishin <michael@clojurewerkz.org> Date: Wed Jun 15 17:12:27 2016 +0300 More tests pass with Common Test commit aaea771db14624df0db944b4c4d0eb42191fb961 Author: Michael Klishin <michael@clojurewerkz.org> Date: Tue Jun 14 17:41:09 2016 +0300 Continue adapting to Common Test commit 0a57f3256a828a835ce44ef02b2e93a3cfe34ccf Author: Michael Klishin <michael@clojurewerkz.org> Date: Tue Jun 14 15:28:19 2016 +0300 Begin moving test suite to Common Test
2016-06-24 18:27:05 +08:00
-include_lib("common_test/include/ct.hrl").
-include_lib("eunit/include/eunit.hrl").
2016-09-29 00:33:51 +08:00
-include_lib("rabbit_common/include/rabbit_core_metrics.hrl").
-include_lib("rabbitmq_ct_helpers/include/rabbit_mgmt_test.hrl").
-include_lib("rabbitmq_ct_helpers/include/rabbit_assert.hrl").
Switch test suite to Common Test, fixes #233 Squashed commit of the following: commit b104a7f84474e247dfef27cd389d6fac554ab634 Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 23 18:14:28 2016 +0300 Finish migration to CT Note: this intentionally deletes several tests that depend on ETS table state and clash with "real" stats GC processes running in parallel. Some of them are covered in other test suites, e.g. rabbit-hole, others can only really be tested with a separate simulation test suite. Per discussion with the team. commit 7585883e0f9432fd3360d18d340bcf599ad8d51f Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 23 15:50:53 2016 +0300 Down to 3 failing tests commit 3243f0efed7033229803404a431c1c6404c25677 Author: Michael Klishin <michael@clojurewerkz.org> Date: Tue Jun 21 01:02:42 2016 +0300 Attempts to simplify a few tests for CT commit 997c2b3782b4ce38708658dc90883980a267a461 Merge: 122c7b7 0ce4f6b Author: Michael Klishin <michael@clojurewerkz.org> Date: Fri Jun 17 14:45:06 2016 +0300 Merge branch 'stable' into common_test commit 122c7b7116778e9aff244822933eaf95567dc59d Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 16 18:19:28 2016 +0300 Begin porting test_db_SUITE commit 872f3e82966999cebd8ba966daac9410badaca09 Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 16 13:54:34 2016 +0300 Makes clustering_SUITE pass commit c8d6c89bda6e7571877221ed6b2513e53b1ebc46 Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 16 03:48:54 2016 +0300 Towards clustering_SUITE commit 7fcb6c834039d6cdf15371ce8640f6dfd9bdf939 Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 16 02:59:24 2016 +0300 Initial clustering_SUITE test passes commit 11205579e86bad4563e027d025b94f0e57ee8386 Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 16 02:59:12 2016 +0300 Add mochiweb to test dependencies commit 895ff82e6e6567336c2ac56532f82427a2c4f705 Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 16 01:09:46 2016 +0300 Refactor commit 6d9200cc8516ee5ea0676fbb0e9b3c88fb2a40a7 Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 16 00:55:08 2016 +0300 open_unmanaged_connection/1 is now available in rabbit_ct_client_helpers commit 40d03cd2fa2a6bc1d4c7c4a1eeb332c5182e1317 Author: Michael Klishin <michael@clojurewerkz.org> Date: Wed Jun 15 23:51:31 2016 +0300 All http_SUITE tests now pass commit 81e08ef36a08884c02fabd51662018751035b5b6 Author: Michael Klishin <michael@clojurewerkz.org> Date: Wed Jun 15 17:12:27 2016 +0300 More tests pass with Common Test commit aaea771db14624df0db944b4c4d0eb42191fb961 Author: Michael Klishin <michael@clojurewerkz.org> Date: Tue Jun 14 17:41:09 2016 +0300 Continue adapting to Common Test commit 0a57f3256a828a835ce44ef02b2e93a3cfe34ccf Author: Michael Klishin <michael@clojurewerkz.org> Date: Tue Jun 14 15:28:19 2016 +0300 Begin moving test suite to Common Test
2016-06-24 18:27:05 +08:00
-import(rabbit_ct_broker_helpers, [get_node_config/3, restart_node/2]).
-import(rabbit_ct_helpers, [eventually/3]).
-import(rabbit_mgmt_test_util, [http_get/2, http_put/4, http_post/4, http_delete/3, http_delete/4]).
Switch test suite to Common Test, fixes #233 Squashed commit of the following: commit b104a7f84474e247dfef27cd389d6fac554ab634 Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 23 18:14:28 2016 +0300 Finish migration to CT Note: this intentionally deletes several tests that depend on ETS table state and clash with "real" stats GC processes running in parallel. Some of them are covered in other test suites, e.g. rabbit-hole, others can only really be tested with a separate simulation test suite. Per discussion with the team. commit 7585883e0f9432fd3360d18d340bcf599ad8d51f Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 23 15:50:53 2016 +0300 Down to 3 failing tests commit 3243f0efed7033229803404a431c1c6404c25677 Author: Michael Klishin <michael@clojurewerkz.org> Date: Tue Jun 21 01:02:42 2016 +0300 Attempts to simplify a few tests for CT commit 997c2b3782b4ce38708658dc90883980a267a461 Merge: 122c7b7 0ce4f6b Author: Michael Klishin <michael@clojurewerkz.org> Date: Fri Jun 17 14:45:06 2016 +0300 Merge branch 'stable' into common_test commit 122c7b7116778e9aff244822933eaf95567dc59d Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 16 18:19:28 2016 +0300 Begin porting test_db_SUITE commit 872f3e82966999cebd8ba966daac9410badaca09 Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 16 13:54:34 2016 +0300 Makes clustering_SUITE pass commit c8d6c89bda6e7571877221ed6b2513e53b1ebc46 Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 16 03:48:54 2016 +0300 Towards clustering_SUITE commit 7fcb6c834039d6cdf15371ce8640f6dfd9bdf939 Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 16 02:59:24 2016 +0300 Initial clustering_SUITE test passes commit 11205579e86bad4563e027d025b94f0e57ee8386 Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 16 02:59:12 2016 +0300 Add mochiweb to test dependencies commit 895ff82e6e6567336c2ac56532f82427a2c4f705 Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 16 01:09:46 2016 +0300 Refactor commit 6d9200cc8516ee5ea0676fbb0e9b3c88fb2a40a7 Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 16 00:55:08 2016 +0300 open_unmanaged_connection/1 is now available in rabbit_ct_client_helpers commit 40d03cd2fa2a6bc1d4c7c4a1eeb332c5182e1317 Author: Michael Klishin <michael@clojurewerkz.org> Date: Wed Jun 15 23:51:31 2016 +0300 All http_SUITE tests now pass commit 81e08ef36a08884c02fabd51662018751035b5b6 Author: Michael Klishin <michael@clojurewerkz.org> Date: Wed Jun 15 17:12:27 2016 +0300 More tests pass with Common Test commit aaea771db14624df0db944b4c4d0eb42191fb961 Author: Michael Klishin <michael@clojurewerkz.org> Date: Tue Jun 14 17:41:09 2016 +0300 Continue adapting to Common Test commit 0a57f3256a828a835ce44ef02b2e93a3cfe34ccf Author: Michael Klishin <michael@clojurewerkz.org> Date: Tue Jun 14 15:28:19 2016 +0300 Begin moving test suite to Common Test
2016-06-24 18:27:05 +08:00
-import(rabbit_misc, [pget/2]).
-compile(nowarn_export_all).
Switch test suite to Common Test, fixes #233 Squashed commit of the following: commit b104a7f84474e247dfef27cd389d6fac554ab634 Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 23 18:14:28 2016 +0300 Finish migration to CT Note: this intentionally deletes several tests that depend on ETS table state and clash with "real" stats GC processes running in parallel. Some of them are covered in other test suites, e.g. rabbit-hole, others can only really be tested with a separate simulation test suite. Per discussion with the team. commit 7585883e0f9432fd3360d18d340bcf599ad8d51f Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 23 15:50:53 2016 +0300 Down to 3 failing tests commit 3243f0efed7033229803404a431c1c6404c25677 Author: Michael Klishin <michael@clojurewerkz.org> Date: Tue Jun 21 01:02:42 2016 +0300 Attempts to simplify a few tests for CT commit 997c2b3782b4ce38708658dc90883980a267a461 Merge: 122c7b7 0ce4f6b Author: Michael Klishin <michael@clojurewerkz.org> Date: Fri Jun 17 14:45:06 2016 +0300 Merge branch 'stable' into common_test commit 122c7b7116778e9aff244822933eaf95567dc59d Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 16 18:19:28 2016 +0300 Begin porting test_db_SUITE commit 872f3e82966999cebd8ba966daac9410badaca09 Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 16 13:54:34 2016 +0300 Makes clustering_SUITE pass commit c8d6c89bda6e7571877221ed6b2513e53b1ebc46 Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 16 03:48:54 2016 +0300 Towards clustering_SUITE commit 7fcb6c834039d6cdf15371ce8640f6dfd9bdf939 Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 16 02:59:24 2016 +0300 Initial clustering_SUITE test passes commit 11205579e86bad4563e027d025b94f0e57ee8386 Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 16 02:59:12 2016 +0300 Add mochiweb to test dependencies commit 895ff82e6e6567336c2ac56532f82427a2c4f705 Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 16 01:09:46 2016 +0300 Refactor commit 6d9200cc8516ee5ea0676fbb0e9b3c88fb2a40a7 Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 16 00:55:08 2016 +0300 open_unmanaged_connection/1 is now available in rabbit_ct_client_helpers commit 40d03cd2fa2a6bc1d4c7c4a1eeb332c5182e1317 Author: Michael Klishin <michael@clojurewerkz.org> Date: Wed Jun 15 23:51:31 2016 +0300 All http_SUITE tests now pass commit 81e08ef36a08884c02fabd51662018751035b5b6 Author: Michael Klishin <michael@clojurewerkz.org> Date: Wed Jun 15 17:12:27 2016 +0300 More tests pass with Common Test commit aaea771db14624df0db944b4c4d0eb42191fb961 Author: Michael Klishin <michael@clojurewerkz.org> Date: Tue Jun 14 17:41:09 2016 +0300 Continue adapting to Common Test commit 0a57f3256a828a835ce44ef02b2e93a3cfe34ccf Author: Michael Klishin <michael@clojurewerkz.org> Date: Tue Jun 14 15:28:19 2016 +0300 Begin moving test suite to Common Test
2016-06-24 18:27:05 +08:00
-compile(export_all).
-define(STATS_INTERVAL, 250).
Switch test suite to Common Test, fixes #233 Squashed commit of the following: commit b104a7f84474e247dfef27cd389d6fac554ab634 Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 23 18:14:28 2016 +0300 Finish migration to CT Note: this intentionally deletes several tests that depend on ETS table state and clash with "real" stats GC processes running in parallel. Some of them are covered in other test suites, e.g. rabbit-hole, others can only really be tested with a separate simulation test suite. Per discussion with the team. commit 7585883e0f9432fd3360d18d340bcf599ad8d51f Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 23 15:50:53 2016 +0300 Down to 3 failing tests commit 3243f0efed7033229803404a431c1c6404c25677 Author: Michael Klishin <michael@clojurewerkz.org> Date: Tue Jun 21 01:02:42 2016 +0300 Attempts to simplify a few tests for CT commit 997c2b3782b4ce38708658dc90883980a267a461 Merge: 122c7b7 0ce4f6b Author: Michael Klishin <michael@clojurewerkz.org> Date: Fri Jun 17 14:45:06 2016 +0300 Merge branch 'stable' into common_test commit 122c7b7116778e9aff244822933eaf95567dc59d Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 16 18:19:28 2016 +0300 Begin porting test_db_SUITE commit 872f3e82966999cebd8ba966daac9410badaca09 Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 16 13:54:34 2016 +0300 Makes clustering_SUITE pass commit c8d6c89bda6e7571877221ed6b2513e53b1ebc46 Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 16 03:48:54 2016 +0300 Towards clustering_SUITE commit 7fcb6c834039d6cdf15371ce8640f6dfd9bdf939 Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 16 02:59:24 2016 +0300 Initial clustering_SUITE test passes commit 11205579e86bad4563e027d025b94f0e57ee8386 Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 16 02:59:12 2016 +0300 Add mochiweb to test dependencies commit 895ff82e6e6567336c2ac56532f82427a2c4f705 Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 16 01:09:46 2016 +0300 Refactor commit 6d9200cc8516ee5ea0676fbb0e9b3c88fb2a40a7 Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 16 00:55:08 2016 +0300 open_unmanaged_connection/1 is now available in rabbit_ct_client_helpers commit 40d03cd2fa2a6bc1d4c7c4a1eeb332c5182e1317 Author: Michael Klishin <michael@clojurewerkz.org> Date: Wed Jun 15 23:51:31 2016 +0300 All http_SUITE tests now pass commit 81e08ef36a08884c02fabd51662018751035b5b6 Author: Michael Klishin <michael@clojurewerkz.org> Date: Wed Jun 15 17:12:27 2016 +0300 More tests pass with Common Test commit aaea771db14624df0db944b4c4d0eb42191fb961 Author: Michael Klishin <michael@clojurewerkz.org> Date: Tue Jun 14 17:41:09 2016 +0300 Continue adapting to Common Test commit 0a57f3256a828a835ce44ef02b2e93a3cfe34ccf Author: Michael Klishin <michael@clojurewerkz.org> Date: Tue Jun 14 15:28:19 2016 +0300 Begin moving test suite to Common Test
2016-06-24 18:27:05 +08:00
all() ->
[
2023-10-04 18:11:54 +08:00
{group, non_parallel_tests}
Switch test suite to Common Test, fixes #233 Squashed commit of the following: commit b104a7f84474e247dfef27cd389d6fac554ab634 Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 23 18:14:28 2016 +0300 Finish migration to CT Note: this intentionally deletes several tests that depend on ETS table state and clash with "real" stats GC processes running in parallel. Some of them are covered in other test suites, e.g. rabbit-hole, others can only really be tested with a separate simulation test suite. Per discussion with the team. commit 7585883e0f9432fd3360d18d340bcf599ad8d51f Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 23 15:50:53 2016 +0300 Down to 3 failing tests commit 3243f0efed7033229803404a431c1c6404c25677 Author: Michael Klishin <michael@clojurewerkz.org> Date: Tue Jun 21 01:02:42 2016 +0300 Attempts to simplify a few tests for CT commit 997c2b3782b4ce38708658dc90883980a267a461 Merge: 122c7b7 0ce4f6b Author: Michael Klishin <michael@clojurewerkz.org> Date: Fri Jun 17 14:45:06 2016 +0300 Merge branch 'stable' into common_test commit 122c7b7116778e9aff244822933eaf95567dc59d Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 16 18:19:28 2016 +0300 Begin porting test_db_SUITE commit 872f3e82966999cebd8ba966daac9410badaca09 Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 16 13:54:34 2016 +0300 Makes clustering_SUITE pass commit c8d6c89bda6e7571877221ed6b2513e53b1ebc46 Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 16 03:48:54 2016 +0300 Towards clustering_SUITE commit 7fcb6c834039d6cdf15371ce8640f6dfd9bdf939 Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 16 02:59:24 2016 +0300 Initial clustering_SUITE test passes commit 11205579e86bad4563e027d025b94f0e57ee8386 Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 16 02:59:12 2016 +0300 Add mochiweb to test dependencies commit 895ff82e6e6567336c2ac56532f82427a2c4f705 Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 16 01:09:46 2016 +0300 Refactor commit 6d9200cc8516ee5ea0676fbb0e9b3c88fb2a40a7 Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 16 00:55:08 2016 +0300 open_unmanaged_connection/1 is now available in rabbit_ct_client_helpers commit 40d03cd2fa2a6bc1d4c7c4a1eeb332c5182e1317 Author: Michael Klishin <michael@clojurewerkz.org> Date: Wed Jun 15 23:51:31 2016 +0300 All http_SUITE tests now pass commit 81e08ef36a08884c02fabd51662018751035b5b6 Author: Michael Klishin <michael@clojurewerkz.org> Date: Wed Jun 15 17:12:27 2016 +0300 More tests pass with Common Test commit aaea771db14624df0db944b4c4d0eb42191fb961 Author: Michael Klishin <michael@clojurewerkz.org> Date: Tue Jun 14 17:41:09 2016 +0300 Continue adapting to Common Test commit 0a57f3256a828a835ce44ef02b2e93a3cfe34ccf Author: Michael Klishin <michael@clojurewerkz.org> Date: Tue Jun 14 15:28:19 2016 +0300 Begin moving test suite to Common Test
2016-06-24 18:27:05 +08:00
].
groups() ->
2016-09-27 20:59:46 +08:00
[{non_parallel_tests, [], [
Switch test suite to Common Test, fixes #233 Squashed commit of the following: commit b104a7f84474e247dfef27cd389d6fac554ab634 Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 23 18:14:28 2016 +0300 Finish migration to CT Note: this intentionally deletes several tests that depend on ETS table state and clash with "real" stats GC processes running in parallel. Some of them are covered in other test suites, e.g. rabbit-hole, others can only really be tested with a separate simulation test suite. Per discussion with the team. commit 7585883e0f9432fd3360d18d340bcf599ad8d51f Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 23 15:50:53 2016 +0300 Down to 3 failing tests commit 3243f0efed7033229803404a431c1c6404c25677 Author: Michael Klishin <michael@clojurewerkz.org> Date: Tue Jun 21 01:02:42 2016 +0300 Attempts to simplify a few tests for CT commit 997c2b3782b4ce38708658dc90883980a267a461 Merge: 122c7b7 0ce4f6b Author: Michael Klishin <michael@clojurewerkz.org> Date: Fri Jun 17 14:45:06 2016 +0300 Merge branch 'stable' into common_test commit 122c7b7116778e9aff244822933eaf95567dc59d Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 16 18:19:28 2016 +0300 Begin porting test_db_SUITE commit 872f3e82966999cebd8ba966daac9410badaca09 Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 16 13:54:34 2016 +0300 Makes clustering_SUITE pass commit c8d6c89bda6e7571877221ed6b2513e53b1ebc46 Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 16 03:48:54 2016 +0300 Towards clustering_SUITE commit 7fcb6c834039d6cdf15371ce8640f6dfd9bdf939 Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 16 02:59:24 2016 +0300 Initial clustering_SUITE test passes commit 11205579e86bad4563e027d025b94f0e57ee8386 Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 16 02:59:12 2016 +0300 Add mochiweb to test dependencies commit 895ff82e6e6567336c2ac56532f82427a2c4f705 Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 16 01:09:46 2016 +0300 Refactor commit 6d9200cc8516ee5ea0676fbb0e9b3c88fb2a40a7 Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 16 00:55:08 2016 +0300 open_unmanaged_connection/1 is now available in rabbit_ct_client_helpers commit 40d03cd2fa2a6bc1d4c7c4a1eeb332c5182e1317 Author: Michael Klishin <michael@clojurewerkz.org> Date: Wed Jun 15 23:51:31 2016 +0300 All http_SUITE tests now pass commit 81e08ef36a08884c02fabd51662018751035b5b6 Author: Michael Klishin <michael@clojurewerkz.org> Date: Wed Jun 15 17:12:27 2016 +0300 More tests pass with Common Test commit aaea771db14624df0db944b4c4d0eb42191fb961 Author: Michael Klishin <michael@clojurewerkz.org> Date: Tue Jun 14 17:41:09 2016 +0300 Continue adapting to Common Test commit 0a57f3256a828a835ce44ef02b2e93a3cfe34ccf Author: Michael Klishin <michael@clojurewerkz.org> Date: Tue Jun 14 15:28:19 2016 +0300 Begin moving test suite to Common Test
2016-06-24 18:27:05 +08:00
list_cluster_nodes_test,
queue_on_other_node,
queue_with_multiple_consumers,
queue_consumer_cancelled,
2016-09-14 21:44:15 +08:00
queue_consumer_channel_closed,
queue,
2016-09-14 21:44:15 +08:00
queues_single,
queues_multiple,
queues_removed,
channels_multiple_on_different_nodes,
channel_closed,
channel,
channel_other_node,
channel_with_consumer_on_other_node,
channel_with_consumer_on_one_node,
2016-09-26 17:55:37 +08:00
consumers,
2016-09-26 19:50:32 +08:00
connections,
exchanges,
2016-09-26 23:31:25 +08:00
exchange,
2016-09-27 15:31:39 +08:00
vhosts,
2016-09-27 20:59:46 +08:00
nodes,
overview,
disable_plugin,
qq_replicas_add,
qq_replicas_delete,
qq_replicas_grow,
qq_replicas_shrink
2023-10-04 18:11:54 +08:00
]}
Switch test suite to Common Test, fixes #233 Squashed commit of the following: commit b104a7f84474e247dfef27cd389d6fac554ab634 Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 23 18:14:28 2016 +0300 Finish migration to CT Note: this intentionally deletes several tests that depend on ETS table state and clash with "real" stats GC processes running in parallel. Some of them are covered in other test suites, e.g. rabbit-hole, others can only really be tested with a separate simulation test suite. Per discussion with the team. commit 7585883e0f9432fd3360d18d340bcf599ad8d51f Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 23 15:50:53 2016 +0300 Down to 3 failing tests commit 3243f0efed7033229803404a431c1c6404c25677 Author: Michael Klishin <michael@clojurewerkz.org> Date: Tue Jun 21 01:02:42 2016 +0300 Attempts to simplify a few tests for CT commit 997c2b3782b4ce38708658dc90883980a267a461 Merge: 122c7b7 0ce4f6b Author: Michael Klishin <michael@clojurewerkz.org> Date: Fri Jun 17 14:45:06 2016 +0300 Merge branch 'stable' into common_test commit 122c7b7116778e9aff244822933eaf95567dc59d Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 16 18:19:28 2016 +0300 Begin porting test_db_SUITE commit 872f3e82966999cebd8ba966daac9410badaca09 Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 16 13:54:34 2016 +0300 Makes clustering_SUITE pass commit c8d6c89bda6e7571877221ed6b2513e53b1ebc46 Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 16 03:48:54 2016 +0300 Towards clustering_SUITE commit 7fcb6c834039d6cdf15371ce8640f6dfd9bdf939 Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 16 02:59:24 2016 +0300 Initial clustering_SUITE test passes commit 11205579e86bad4563e027d025b94f0e57ee8386 Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 16 02:59:12 2016 +0300 Add mochiweb to test dependencies commit 895ff82e6e6567336c2ac56532f82427a2c4f705 Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 16 01:09:46 2016 +0300 Refactor commit 6d9200cc8516ee5ea0676fbb0e9b3c88fb2a40a7 Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 16 00:55:08 2016 +0300 open_unmanaged_connection/1 is now available in rabbit_ct_client_helpers commit 40d03cd2fa2a6bc1d4c7c4a1eeb332c5182e1317 Author: Michael Klishin <michael@clojurewerkz.org> Date: Wed Jun 15 23:51:31 2016 +0300 All http_SUITE tests now pass commit 81e08ef36a08884c02fabd51662018751035b5b6 Author: Michael Klishin <michael@clojurewerkz.org> Date: Wed Jun 15 17:12:27 2016 +0300 More tests pass with Common Test commit aaea771db14624df0db944b4c4d0eb42191fb961 Author: Michael Klishin <michael@clojurewerkz.org> Date: Tue Jun 14 17:41:09 2016 +0300 Continue adapting to Common Test commit 0a57f3256a828a835ce44ef02b2e93a3cfe34ccf Author: Michael Klishin <michael@clojurewerkz.org> Date: Tue Jun 14 15:28:19 2016 +0300 Begin moving test suite to Common Test
2016-06-24 18:27:05 +08:00
].
%% -------------------------------------------------------------------
%% Testsuite setup/teardown.
%% -------------------------------------------------------------------
merge_app_env(Config) ->
Config1 = rabbit_ct_helpers:merge_app_env(
Config, {rabbit, [
{collect_statistics, fine},
{collect_statistics_interval, ?STATS_INTERVAL},
{core_metrics_gc_interval, 500}
]}),
rabbit_ct_helpers:merge_app_env(Config1,
{rabbitmq_management_agent, [
{rates_mode, detailed},
{sample_retention_policies,
%% List of {MaxAgeInSeconds, SampleEveryNSeconds}
[{global, [{605, 5}, {3660, 60}, {29400, 600}, {86400, 1800}]},
{basic, [{605, 5}, {3600, 60}]},
{detailed, [{10, 5}]}] }]}).
Switch test suite to Common Test, fixes #233 Squashed commit of the following: commit b104a7f84474e247dfef27cd389d6fac554ab634 Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 23 18:14:28 2016 +0300 Finish migration to CT Note: this intentionally deletes several tests that depend on ETS table state and clash with "real" stats GC processes running in parallel. Some of them are covered in other test suites, e.g. rabbit-hole, others can only really be tested with a separate simulation test suite. Per discussion with the team. commit 7585883e0f9432fd3360d18d340bcf599ad8d51f Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 23 15:50:53 2016 +0300 Down to 3 failing tests commit 3243f0efed7033229803404a431c1c6404c25677 Author: Michael Klishin <michael@clojurewerkz.org> Date: Tue Jun 21 01:02:42 2016 +0300 Attempts to simplify a few tests for CT commit 997c2b3782b4ce38708658dc90883980a267a461 Merge: 122c7b7 0ce4f6b Author: Michael Klishin <michael@clojurewerkz.org> Date: Fri Jun 17 14:45:06 2016 +0300 Merge branch 'stable' into common_test commit 122c7b7116778e9aff244822933eaf95567dc59d Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 16 18:19:28 2016 +0300 Begin porting test_db_SUITE commit 872f3e82966999cebd8ba966daac9410badaca09 Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 16 13:54:34 2016 +0300 Makes clustering_SUITE pass commit c8d6c89bda6e7571877221ed6b2513e53b1ebc46 Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 16 03:48:54 2016 +0300 Towards clustering_SUITE commit 7fcb6c834039d6cdf15371ce8640f6dfd9bdf939 Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 16 02:59:24 2016 +0300 Initial clustering_SUITE test passes commit 11205579e86bad4563e027d025b94f0e57ee8386 Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 16 02:59:12 2016 +0300 Add mochiweb to test dependencies commit 895ff82e6e6567336c2ac56532f82427a2c4f705 Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 16 01:09:46 2016 +0300 Refactor commit 6d9200cc8516ee5ea0676fbb0e9b3c88fb2a40a7 Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 16 00:55:08 2016 +0300 open_unmanaged_connection/1 is now available in rabbit_ct_client_helpers commit 40d03cd2fa2a6bc1d4c7c4a1eeb332c5182e1317 Author: Michael Klishin <michael@clojurewerkz.org> Date: Wed Jun 15 23:51:31 2016 +0300 All http_SUITE tests now pass commit 81e08ef36a08884c02fabd51662018751035b5b6 Author: Michael Klishin <michael@clojurewerkz.org> Date: Wed Jun 15 17:12:27 2016 +0300 More tests pass with Common Test commit aaea771db14624df0db944b4c4d0eb42191fb961 Author: Michael Klishin <michael@clojurewerkz.org> Date: Tue Jun 14 17:41:09 2016 +0300 Continue adapting to Common Test commit 0a57f3256a828a835ce44ef02b2e93a3cfe34ccf Author: Michael Klishin <michael@clojurewerkz.org> Date: Tue Jun 14 15:28:19 2016 +0300 Begin moving test suite to Common Test
2016-06-24 18:27:05 +08:00
init_per_suite(Config) ->
rabbit_ct_helpers:log_environment(),
inets:start(),
Config1 = rabbit_ct_helpers:set_config(Config, [
{rmq_nodename_suffix, ?MODULE},
{rmq_nodes_count, 2}
]),
Config2 = merge_app_env(Config1),
rabbit_ct_helpers:run_setup_steps(Config2,
Switch test suite to Common Test, fixes #233 Squashed commit of the following: commit b104a7f84474e247dfef27cd389d6fac554ab634 Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 23 18:14:28 2016 +0300 Finish migration to CT Note: this intentionally deletes several tests that depend on ETS table state and clash with "real" stats GC processes running in parallel. Some of them are covered in other test suites, e.g. rabbit-hole, others can only really be tested with a separate simulation test suite. Per discussion with the team. commit 7585883e0f9432fd3360d18d340bcf599ad8d51f Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 23 15:50:53 2016 +0300 Down to 3 failing tests commit 3243f0efed7033229803404a431c1c6404c25677 Author: Michael Klishin <michael@clojurewerkz.org> Date: Tue Jun 21 01:02:42 2016 +0300 Attempts to simplify a few tests for CT commit 997c2b3782b4ce38708658dc90883980a267a461 Merge: 122c7b7 0ce4f6b Author: Michael Klishin <michael@clojurewerkz.org> Date: Fri Jun 17 14:45:06 2016 +0300 Merge branch 'stable' into common_test commit 122c7b7116778e9aff244822933eaf95567dc59d Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 16 18:19:28 2016 +0300 Begin porting test_db_SUITE commit 872f3e82966999cebd8ba966daac9410badaca09 Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 16 13:54:34 2016 +0300 Makes clustering_SUITE pass commit c8d6c89bda6e7571877221ed6b2513e53b1ebc46 Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 16 03:48:54 2016 +0300 Towards clustering_SUITE commit 7fcb6c834039d6cdf15371ce8640f6dfd9bdf939 Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 16 02:59:24 2016 +0300 Initial clustering_SUITE test passes commit 11205579e86bad4563e027d025b94f0e57ee8386 Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 16 02:59:12 2016 +0300 Add mochiweb to test dependencies commit 895ff82e6e6567336c2ac56532f82427a2c4f705 Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 16 01:09:46 2016 +0300 Refactor commit 6d9200cc8516ee5ea0676fbb0e9b3c88fb2a40a7 Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 16 00:55:08 2016 +0300 open_unmanaged_connection/1 is now available in rabbit_ct_client_helpers commit 40d03cd2fa2a6bc1d4c7c4a1eeb332c5182e1317 Author: Michael Klishin <michael@clojurewerkz.org> Date: Wed Jun 15 23:51:31 2016 +0300 All http_SUITE tests now pass commit 81e08ef36a08884c02fabd51662018751035b5b6 Author: Michael Klishin <michael@clojurewerkz.org> Date: Wed Jun 15 17:12:27 2016 +0300 More tests pass with Common Test commit aaea771db14624df0db944b4c4d0eb42191fb961 Author: Michael Klishin <michael@clojurewerkz.org> Date: Tue Jun 14 17:41:09 2016 +0300 Continue adapting to Common Test commit 0a57f3256a828a835ce44ef02b2e93a3cfe34ccf Author: Michael Klishin <michael@clojurewerkz.org> Date: Tue Jun 14 15:28:19 2016 +0300 Begin moving test suite to Common Test
2016-06-24 18:27:05 +08:00
rabbit_ct_broker_helpers:setup_steps()).
end_per_suite(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) ->
2016-09-29 00:33:51 +08:00
rabbit_ct_broker_helpers:rpc(Config, 0, ?MODULE, clear_all_table_data, []),
rabbit_ct_broker_helpers:rpc(Config, 1, ?MODULE, clear_all_table_data, []),
2020-09-24 19:18:18 +08:00
rabbit_ct_broker_helpers:close_all_connections(Config, 0, <<"clustering_SUITE:init_per_testcase">>),
Conn = rabbit_ct_client_helpers:open_unmanaged_connection(Config),
Config1 = rabbit_ct_helpers:set_config(Config, {conn, Conn}),
rabbit_ct_helpers:testcase_started(Config1, Testcase).
Switch test suite to Common Test, fixes #233 Squashed commit of the following: commit b104a7f84474e247dfef27cd389d6fac554ab634 Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 23 18:14:28 2016 +0300 Finish migration to CT Note: this intentionally deletes several tests that depend on ETS table state and clash with "real" stats GC processes running in parallel. Some of them are covered in other test suites, e.g. rabbit-hole, others can only really be tested with a separate simulation test suite. Per discussion with the team. commit 7585883e0f9432fd3360d18d340bcf599ad8d51f Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 23 15:50:53 2016 +0300 Down to 3 failing tests commit 3243f0efed7033229803404a431c1c6404c25677 Author: Michael Klishin <michael@clojurewerkz.org> Date: Tue Jun 21 01:02:42 2016 +0300 Attempts to simplify a few tests for CT commit 997c2b3782b4ce38708658dc90883980a267a461 Merge: 122c7b7 0ce4f6b Author: Michael Klishin <michael@clojurewerkz.org> Date: Fri Jun 17 14:45:06 2016 +0300 Merge branch 'stable' into common_test commit 122c7b7116778e9aff244822933eaf95567dc59d Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 16 18:19:28 2016 +0300 Begin porting test_db_SUITE commit 872f3e82966999cebd8ba966daac9410badaca09 Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 16 13:54:34 2016 +0300 Makes clustering_SUITE pass commit c8d6c89bda6e7571877221ed6b2513e53b1ebc46 Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 16 03:48:54 2016 +0300 Towards clustering_SUITE commit 7fcb6c834039d6cdf15371ce8640f6dfd9bdf939 Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 16 02:59:24 2016 +0300 Initial clustering_SUITE test passes commit 11205579e86bad4563e027d025b94f0e57ee8386 Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 16 02:59:12 2016 +0300 Add mochiweb to test dependencies commit 895ff82e6e6567336c2ac56532f82427a2c4f705 Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 16 01:09:46 2016 +0300 Refactor commit 6d9200cc8516ee5ea0676fbb0e9b3c88fb2a40a7 Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 16 00:55:08 2016 +0300 open_unmanaged_connection/1 is now available in rabbit_ct_client_helpers commit 40d03cd2fa2a6bc1d4c7c4a1eeb332c5182e1317 Author: Michael Klishin <michael@clojurewerkz.org> Date: Wed Jun 15 23:51:31 2016 +0300 All http_SUITE tests now pass commit 81e08ef36a08884c02fabd51662018751035b5b6 Author: Michael Klishin <michael@clojurewerkz.org> Date: Wed Jun 15 17:12:27 2016 +0300 More tests pass with Common Test commit aaea771db14624df0db944b4c4d0eb42191fb961 Author: Michael Klishin <michael@clojurewerkz.org> Date: Tue Jun 14 17:41:09 2016 +0300 Continue adapting to Common Test commit 0a57f3256a828a835ce44ef02b2e93a3cfe34ccf Author: Michael Klishin <michael@clojurewerkz.org> Date: Tue Jun 14 15:28:19 2016 +0300 Begin moving test suite to Common Test
2016-06-24 18:27:05 +08:00
end_per_testcase(Testcase, Config) ->
rabbit_ct_client_helpers:close_connection(?config(conn, Config)),
2020-09-24 19:18:18 +08:00
rabbit_ct_broker_helpers:close_all_connections(Config, 0, <<"clustering_SUITE:end_per_testcase">>),
Switch test suite to Common Test, fixes #233 Squashed commit of the following: commit b104a7f84474e247dfef27cd389d6fac554ab634 Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 23 18:14:28 2016 +0300 Finish migration to CT Note: this intentionally deletes several tests that depend on ETS table state and clash with "real" stats GC processes running in parallel. Some of them are covered in other test suites, e.g. rabbit-hole, others can only really be tested with a separate simulation test suite. Per discussion with the team. commit 7585883e0f9432fd3360d18d340bcf599ad8d51f Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 23 15:50:53 2016 +0300 Down to 3 failing tests commit 3243f0efed7033229803404a431c1c6404c25677 Author: Michael Klishin <michael@clojurewerkz.org> Date: Tue Jun 21 01:02:42 2016 +0300 Attempts to simplify a few tests for CT commit 997c2b3782b4ce38708658dc90883980a267a461 Merge: 122c7b7 0ce4f6b Author: Michael Klishin <michael@clojurewerkz.org> Date: Fri Jun 17 14:45:06 2016 +0300 Merge branch 'stable' into common_test commit 122c7b7116778e9aff244822933eaf95567dc59d Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 16 18:19:28 2016 +0300 Begin porting test_db_SUITE commit 872f3e82966999cebd8ba966daac9410badaca09 Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 16 13:54:34 2016 +0300 Makes clustering_SUITE pass commit c8d6c89bda6e7571877221ed6b2513e53b1ebc46 Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 16 03:48:54 2016 +0300 Towards clustering_SUITE commit 7fcb6c834039d6cdf15371ce8640f6dfd9bdf939 Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 16 02:59:24 2016 +0300 Initial clustering_SUITE test passes commit 11205579e86bad4563e027d025b94f0e57ee8386 Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 16 02:59:12 2016 +0300 Add mochiweb to test dependencies commit 895ff82e6e6567336c2ac56532f82427a2c4f705 Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 16 01:09:46 2016 +0300 Refactor commit 6d9200cc8516ee5ea0676fbb0e9b3c88fb2a40a7 Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 16 00:55:08 2016 +0300 open_unmanaged_connection/1 is now available in rabbit_ct_client_helpers commit 40d03cd2fa2a6bc1d4c7c4a1eeb332c5182e1317 Author: Michael Klishin <michael@clojurewerkz.org> Date: Wed Jun 15 23:51:31 2016 +0300 All http_SUITE tests now pass commit 81e08ef36a08884c02fabd51662018751035b5b6 Author: Michael Klishin <michael@clojurewerkz.org> Date: Wed Jun 15 17:12:27 2016 +0300 More tests pass with Common Test commit aaea771db14624df0db944b4c4d0eb42191fb961 Author: Michael Klishin <michael@clojurewerkz.org> Date: Tue Jun 14 17:41:09 2016 +0300 Continue adapting to Common Test commit 0a57f3256a828a835ce44ef02b2e93a3cfe34ccf Author: Michael Klishin <michael@clojurewerkz.org> Date: Tue Jun 14 15:28:19 2016 +0300 Begin moving test suite to Common Test
2016-06-24 18:27:05 +08:00
rabbit_ct_helpers:testcase_finished(Config, Testcase).
%% -------------------------------------------------------------------
%% Testcases.
%% -------------------------------------------------------------------
list_cluster_nodes_test(Config) ->
%% see rmq_nodes_count in init_per_suite
eventually(?_assertEqual(2, length(http_get(Config, "/nodes"))),
1000, 30),
Switch test suite to Common Test, fixes #233 Squashed commit of the following: commit b104a7f84474e247dfef27cd389d6fac554ab634 Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 23 18:14:28 2016 +0300 Finish migration to CT Note: this intentionally deletes several tests that depend on ETS table state and clash with "real" stats GC processes running in parallel. Some of them are covered in other test suites, e.g. rabbit-hole, others can only really be tested with a separate simulation test suite. Per discussion with the team. commit 7585883e0f9432fd3360d18d340bcf599ad8d51f Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 23 15:50:53 2016 +0300 Down to 3 failing tests commit 3243f0efed7033229803404a431c1c6404c25677 Author: Michael Klishin <michael@clojurewerkz.org> Date: Tue Jun 21 01:02:42 2016 +0300 Attempts to simplify a few tests for CT commit 997c2b3782b4ce38708658dc90883980a267a461 Merge: 122c7b7 0ce4f6b Author: Michael Klishin <michael@clojurewerkz.org> Date: Fri Jun 17 14:45:06 2016 +0300 Merge branch 'stable' into common_test commit 122c7b7116778e9aff244822933eaf95567dc59d Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 16 18:19:28 2016 +0300 Begin porting test_db_SUITE commit 872f3e82966999cebd8ba966daac9410badaca09 Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 16 13:54:34 2016 +0300 Makes clustering_SUITE pass commit c8d6c89bda6e7571877221ed6b2513e53b1ebc46 Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 16 03:48:54 2016 +0300 Towards clustering_SUITE commit 7fcb6c834039d6cdf15371ce8640f6dfd9bdf939 Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 16 02:59:24 2016 +0300 Initial clustering_SUITE test passes commit 11205579e86bad4563e027d025b94f0e57ee8386 Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 16 02:59:12 2016 +0300 Add mochiweb to test dependencies commit 895ff82e6e6567336c2ac56532f82427a2c4f705 Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 16 01:09:46 2016 +0300 Refactor commit 6d9200cc8516ee5ea0676fbb0e9b3c88fb2a40a7 Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 16 00:55:08 2016 +0300 open_unmanaged_connection/1 is now available in rabbit_ct_client_helpers commit 40d03cd2fa2a6bc1d4c7c4a1eeb332c5182e1317 Author: Michael Klishin <michael@clojurewerkz.org> Date: Wed Jun 15 23:51:31 2016 +0300 All http_SUITE tests now pass commit 81e08ef36a08884c02fabd51662018751035b5b6 Author: Michael Klishin <michael@clojurewerkz.org> Date: Wed Jun 15 17:12:27 2016 +0300 More tests pass with Common Test commit aaea771db14624df0db944b4c4d0eb42191fb961 Author: Michael Klishin <michael@clojurewerkz.org> Date: Tue Jun 14 17:41:09 2016 +0300 Continue adapting to Common Test commit 0a57f3256a828a835ce44ef02b2e93a3cfe34ccf Author: Michael Klishin <michael@clojurewerkz.org> Date: Tue Jun 14 15:28:19 2016 +0300 Begin moving test suite to Common Test
2016-06-24 18:27:05 +08:00
passed.
qq_replicas_add(Config) ->
Conn = rabbit_ct_client_helpers:open_unmanaged_connection(Config, 0),
{ok, Chan} = amqp_connection:open_channel(Conn),
_ = queue_declare_quorum(Chan, <<"qq.22">>),
_ = wait_for_queue(Config, "/queues/%2F/qq.22"),
Nodename1 = rabbit_data_coercion:to_binary(get_node_config(Config, 1, nodename)),
Body = [{node, Nodename1}],
http_post(Config, "/queues/quorum/%2F/qq.22/replicas/add", Body, ?NO_CONTENT),
http_delete(Config, "/queues/%2F/qq.22", ?NO_CONTENT),
amqp_channel:close(Chan),
rabbit_ct_client_helpers:close_connection(Conn),
ok.
qq_replicas_delete(Config) ->
Conn = rabbit_ct_client_helpers:open_unmanaged_connection(Config, 0),
{ok, Chan} = amqp_connection:open_channel(Conn),
_ = queue_declare_quorum(Chan, <<"qq.23">>),
?awaitMatch(#{members := [_, _]}, http_get(Config, "/queues/%2F/qq.23"), 30000),
Nodename1 = rabbit_data_coercion:to_binary(get_node_config(Config, 1, nodename)),
Body = [{node, Nodename1}],
http_delete(Config, "/queues/quorum/%2F/qq.23/replicas/delete", ?ACCEPTED, Body),
?awaitMatch(#{members := [_]}, http_get(Config, "/queues/%2F/qq.23"), 30000),
http_post(Config, "/queues/quorum/%2F/qq.23/replicas/add", Body, ?NO_CONTENT),
?awaitMatch(#{members := [_, _]}, http_get(Config, "/queues/%2F/qq.23"), 30000),
http_delete(Config, "/queues/%2F/qq.23", ?NO_CONTENT),
amqp_channel:close(Chan),
rabbit_ct_client_helpers:close_connection(Conn),
ok.
qq_replicas_grow(Config) ->
Conn = rabbit_ct_client_helpers:open_unmanaged_connection(Config, 0),
{ok, Chan} = amqp_connection:open_channel(Conn),
_ = queue_declare_quorum(Chan, <<"qq.24">>),
Nodename1 = rabbit_data_coercion:to_list(get_node_config(Config, 1, nodename)),
?awaitMatch(#{members := [_, _]}, http_get(Config, "/queues/%2F/qq.24"), 30000),
http_delete(Config, "/queues/quorum/%2F/qq.24/replicas/delete", ?ACCEPTED,
[{node, Nodename1}]),
?awaitMatch(#{members := [_]}, http_get(Config, "/queues/%2F/qq.24"), 30000),
Body = [{strategy, <<"all">>},
{queue_pattern, <<"qq.24">>},
{vhost_pattern, <<".*">>}],
http_post(Config, "/queues/quorum/replicas/on/" ++ Nodename1 ++ "/grow",
Body, ?NO_CONTENT),
?awaitMatch(#{members := [_, _]}, http_get(Config, "/queues/%2F/qq.24"), 30000),
http_delete(Config, "/queues/%2F/qq.24", ?NO_CONTENT),
amqp_channel:close(Chan),
rabbit_ct_client_helpers:close_connection(Conn),
ok.
qq_replicas_shrink(Config) ->
Conn = rabbit_ct_client_helpers:open_unmanaged_connection(Config, 0),
{ok, Chan} = amqp_connection:open_channel(Conn),
_ = queue_declare_quorum(Chan, <<"qq.25">>),
?awaitMatch(#{members := [_, _]}, http_get(Config, "/queues/%2F/qq.25"), 30000),
?awaitMatch(#{members := [_, _]}, http_get(Config, "/queues/%2F/qq.25"), 30000),
Nodename1 = rabbit_data_coercion:to_list(get_node_config(Config, 1, nodename)),
http_delete(Config, "/queues/quorum/replicas/on/" ++ Nodename1 ++ "/shrink",
?ACCEPTED),
?awaitMatch(#{members := [_]}, http_get(Config, "/queues/%2F/qq.25"), 30000),
http_delete(Config, "/queues/%2F/qq.25", ?NO_CONTENT),
amqp_channel:close(Chan),
rabbit_ct_client_helpers:close_connection(Conn),
ok.
queue_on_other_node(Config) ->
Conn = rabbit_ct_client_helpers:open_unmanaged_connection(Config, 1),
{ok, Chan} = amqp_connection:open_channel(Conn),
_ = queue_declare(Chan, <<"some-queue">>),
Reduce ETS copy overhead when delivering to target queues (#14570) * Reduce ETS copy overhead when delivering to target queues ## What? This commit avoids copying the full amqqueue record from ETS per incoming message and target queue. The amqqueue record contains 21 elements and for some queue types, especially streams, some elements are themselves nested terms. ## How? In Khepri, use a new `rabbit_khepri_queue_target` projection which contains a subset of the full amqqueue record. This way all relevant information to deliver to a target queue can be looked up in a single ets:lookup_element call. Alternative approaches are described in https://github.com/erlang/otp/issues/10211 ## Benchmark Fanout to 3 streams Start broker: ``` make run-broker TEST_TMPDIR="$HOME/scratch/rabbit/test" \ FULL=1 \ RABBITMQ_SERVER_ADDITIONAL_ERL_ARGS="+S 5" \ RABBITMQ_CONFIG_FILE="$HOME/scratch/rabbit/high-credit.config" \ PLUGINS="rabbitmq_management" ``` `high-credit.config` contains: ``` [ {rabbit, [ %% Maximum incoming-window of AMQP 1.0 session. %% Default: 400 {max_incoming_window, 5000}, %% Maximum link-credit RabbitMQ grants to AMQP 1.0 sender. %% Default: 128 {max_link_credit, 2000}, %% Maximum link-credit RabbitMQ AMQP 1.0 session grants to sending queue. %% Default: 256 {max_queue_credit, 5000}, {loopback_users, []} ]}, {rabbitmq_management_agent, [ {disable_metrics_collector, true} ]} ]. ``` Create the 3 streams and bindings to the fanout exchange: ``` deps/rabbitmq_management/bin/rabbitmqadmin declare queue queue_type=stream durable=true name=ssssssssssssssssssssssssssssssssssssssssssssssssssssssssssss1 && \ deps/rabbitmq_management/bin/rabbitmqadmin declare queue queue_type=stream durable=true name=ssssssssssssssssssssssssssssssssssssssssssssssssssssssssssss2 && \ deps/rabbitmq_management/bin/rabbitmqadmin declare queue queue_type=stream durable=true name=ssssssssssssssssssssssssssssssssssssssssssssssssssssssssssss3 && \ deps/rabbitmq_management/bin/rabbitmqadmin declare binding source=amq.fanout destination=ssssssssssssssssssssssssssssssssssssssssssssssssssssssssssss1 && \ deps/rabbitmq_management/bin/rabbitmqadmin declare binding source=amq.fanout destination=ssssssssssssssssssssssssssssssssssssssssssssssssssssssssssss2 && \ deps/rabbitmq_management/bin/rabbitmqadmin declare binding source=amq.fanout destination=ssssssssssssssssssssssssssssssssssssssssssssssssssssssssssss3 ``` Start the client: ``` quiver-arrow send //host.docker.internal//exchanges/amq.fanout --summary --count 1m --body-size 4 ``` `main` branch: ``` Count ............................................. 1,000,000 messages Duration ............................................... 16.3 seconds Message rate ......................................... 61,237 messages/s ``` with this PR: ``` Count ............................................. 1,000,000 messages Duration ............................................... 14.2 seconds Message rate ......................................... 70,309 messages/s ``` Hence, this PR increases the throughput when sending to 3 streams via AMQP by ~14%. * Avoid creating 5 elems tuple * Simplify rabbit_queue_type callbacks deliver should only take targets and init should only take the full record * Fix flaky test * Fix specs
2025-09-25 17:25:09 +08:00
eventually(?_assertEqual(1, length(http_get(Config, "/queues/%2F"))), 2000, 5),
{ok, Chan2} = amqp_connection:open_channel(?config(conn, Config)),
consume(Chan2, <<"some-queue">>),
?awaitMatch([_],
begin
force_stats(Config),
maps:get(consumer_details, http_get(Config, "/queues/%2F/some-queue"))
end,
60000),
?awaitMatch({#{}, 0, <<"some-queue">>},
begin
Res = http_get(Config, "/queues/%2F/some-queue"),
%% assert some basic data is present
case maps:get(consumer_details, Res, undefined) of
[Cons] ->
{maps:get(channel_details, Cons, undefined), % channel details proplist must not be empty
maps:get(prefetch_count, Cons, undefined), % check one of the augmented properties
maps:get(name, Res, undefined)};
Any ->
{unexpected_consumer_details, Any}
end
end,
60000),
http_delete(Config, "/queues/%2F/some-queue", ?NO_CONTENT),
amqp_channel:close(Chan),
amqp_channel:close(Chan2),
rabbit_ct_client_helpers:close_connection(Conn),
ok.
queue_with_multiple_consumers(Config) ->
{ok, Chan} = amqp_connection:open_channel(?config(conn, Config)),
Q = <<"multi-consumer-queue1">>,
_ = queue_declare(Chan, Q),
_ = wait_for_queue(Config, "/queues/%2F/multi-consumer-queue1"),
Conn = rabbit_ct_client_helpers:open_unmanaged_connection(Config, 1),
{ok, Chan2} = amqp_connection:open_channel(Conn),
consume(Chan, Q),
consume(Chan2, Q),
publish(Chan2, Q),
publish(Chan, Q),
% ensure a message has been consumed and acked
receive
{#'basic.deliver'{delivery_tag = T}, _} ->
amqp_channel:cast(Chan, #'basic.ack'{delivery_tag = T})
end,
eventually(?_assertMatch(
{#{}, #{}, 0, 0, Q},
begin
force_stats(Config),
Res = http_get(Config, "/queues/%2F/multi-consumer-queue1"),
%% assert some basic data is there
case maps:get(consumer_details, Res) of
[C1, C2] ->
%% channel details proplist must not be empty
{maps:get(channel_details, C1),
maps:get(channel_details, C2),
%% check one of the augmented properties
maps:get(prefetch_count, C1),
maps:get(prefetch_count, C2),
maps:get(name, Res)};
Any ->
{unexpected_consumer_details, Any}
end
end),
1000, 60),
http_delete(Config, "/queues/%2F/multi-consumer-queue1", ?NO_CONTENT),
amqp_channel:close(Chan),
amqp_channel:close(Chan2),
rabbit_ct_client_helpers:close_connection(Conn),
ok.
queue_consumer_cancelled(Config) ->
{ok, Chan} = amqp_connection:open_channel(?config(conn, Config)),
_ = queue_declare(Chan, <<"some-queue">>),
_ = wait_for_queue(Config, "/queues/%2F/some-queue"),
Tag = consume(Chan, <<"some-queue">>),
#'basic.cancel_ok'{} =
amqp_channel:call(Chan, #'basic.cancel'{consumer_tag = Tag}),
eventually(?_assertMatch(
{[], <<"some-queue">>},
begin
force_stats(Config),
Res = http_get(Config, "/queues/%2F/some-queue"),
%% assert there are no consumer details
{maps:get(consumer_details, Res),
maps:get(name, Res)}
end),
1000, 60),
amqp_channel:close(Chan),
http_delete(Config, "/queues/%2F/some-queue", ?NO_CONTENT),
ok.
queue_consumer_channel_closed(Config) ->
{ok, Chan} = amqp_connection:open_channel(?config(conn, Config)),
_ = queue_declare(Chan, <<"some-queue">>),
_ = wait_for_queue(Config, "/queues/%2F/some-queue"),
consume(Chan, <<"some-queue">>),
force_stats(Config), % ensure channel stats have been written
amqp_channel:close(Chan),
force_stats(Config),
2024-11-13 17:13:36 +08:00
?awaitMatch([],
%% assert there are no consumer details
maps:get(consumer_details,
http_get(Config, "/queues/%2F/some-queue")),
30000),
?awaitMatch(<<"some-queue">>,
maps:get(name,
http_get(Config, "/queues/%2F/some-queue")),
30000),
http_delete(Config, "/queues/%2F/some-queue", ?NO_CONTENT),
2016-09-09 19:43:29 +08:00
ok.
queue(Config) ->
http_put(Config, "/queues/%2F/some-queue", none, [?CREATED, ?NO_CONTENT]),
_ = wait_for_queue(Config, "/queues/%2F/some-queue"),
{ok, Chan} = amqp_connection:open_channel(?config(conn, Config)),
{ok, Chan2} = amqp_connection:open_channel(?config(conn, Config)),
publish(Chan, <<"some-queue">>),
basic_get(Chan, <<"some-queue">>),
publish(Chan2, <<"some-queue">>),
basic_get(Chan2, <<"some-queue">>),
force_stats(Config),
% assert single queue is returned
2024-11-13 17:13:36 +08:00
?awaitMatch([#{} | _],
maps:get(deliveries,
http_get(Config, "/queues/%2F/some-queue")),
30000),
amqp_channel:close(Chan),
amqp_channel:close(Chan2),
http_delete(Config, "/queues/%2F/some-queue", ?NO_CONTENT),
ok.
2016-09-14 21:44:15 +08:00
queues_single(Config) ->
http_put(Config, "/queues/%2F/some-queue", none, [?CREATED, ?NO_CONTENT]),
_ = wait_for_queue(Config, "/queues/%2F/some-queue"),
eventually(?_assertMatch(
true,
begin
force_stats(Config),
Res = http_get(Config, "/queues/%2F"),
%% assert at least one queue is returned
length(Res) >= 1
end),
1000, 60),
http_delete(Config, "/queues/%2F/some-queue", ?NO_CONTENT),
2016-09-14 21:44:15 +08:00
ok.
queues_multiple(Config) ->
{ok, Chan} = amqp_connection:open_channel(?config(conn, Config)),
_ = queue_declare(Chan, <<"some-queue">>),
_ = queue_declare(Chan, <<"some-other-queue">>),
_ = wait_for_queue(Config, "/queues/%2F/some-queue"),
_ = wait_for_queue(Config, "/queues/%2F/some-other-queue"),
2016-09-14 21:44:15 +08:00
eventually(?_assertNot(
begin
force_stats(Config),
case http_get(Config, "/queues/%2F") of
[Q1, Q2 | _] ->
%% assert some basic data is present
ct:pal("Name q1 ~p q2 ~p",
[maps:get(name, Q1),
maps:get(name, Q2)]),
maps:get(name, Q1) =:= maps:get(name, Q2);
Any ->
{unexpected_queues, Any}
end
end),
1000, 60),
http_delete(Config, "/queues/%2F/some-queue", ?NO_CONTENT),
http_delete(Config, "/queues/%2F/some-other-queue", ?NO_CONTENT),
amqp_channel:close(Chan),
2016-09-14 21:44:15 +08:00
ok.
queues_removed(Config) ->
http_put(Config, "/queues/%2F/some-queue", none, [?CREATED, ?NO_CONTENT]),
force_stats(Config),
N = length(http_get(Config, "/queues/%2F")),
http_delete(Config, "/queues/%2F/some-queue", ?NO_CONTENT),
eventually(?_assertEqual(
N - 1,
begin
force_stats(Config),
length(http_get(Config, "/queues/%2F"))
end),
1000, 60),
2016-09-14 21:44:15 +08:00
ok.
channels_multiple_on_different_nodes(Config) ->
Conn = rabbit_ct_client_helpers:open_unmanaged_connection(Config, 1),
{ok, Chan} = amqp_connection:open_channel(Conn),
_ = queue_declare(Chan, <<"some-queue">>),
_ = wait_for_queue(Config, "/queues/%2F/some-queue"),
Conn2 = rabbit_ct_client_helpers:open_unmanaged_connection(Config, 1),
{ok, Chan2} = amqp_connection:open_channel(Conn2),
consume(Chan, <<"some-queue">>),
% assert two channels are present
2024-11-13 17:13:36 +08:00
?awaitMatch([_,_],
begin
force_stats(Config),
http_get(Config, "/channels")
end,
2024-11-13 17:13:36 +08:00
30000),
http_delete(Config, "/queues/%2F/some-queue", ?NO_CONTENT),
amqp_channel:close(Chan),
amqp_channel:close(Chan2),
rabbit_ct_client_helpers:close_connection(Conn),
rabbit_ct_client_helpers:close_connection(Conn2),
ok.
channel_closed(Config) ->
{ok, Chan} = amqp_connection:open_channel(?config(conn, Config)),
_ = queue_declare(Chan, <<"some-queue">>),
_ = wait_for_queue(Config, "/queues/%2F/some-queue"),
{ok, Chan2} = amqp_connection:open_channel(?config(conn, Config)),
force_stats(Config),
consume(Chan2, <<"some-queue">>),
amqp_channel:close(Chan),
rabbit_ct_helpers:await_condition(
fun() ->
force_stats(Config),
%% assert one channel is present
length(http_get(Config, "/channels")) == 1
end,
60000),
http_delete(Config, "/queues/%2F/some-queue", ?NO_CONTENT),
amqp_channel:close(Chan2),
ok.
channel(Config) ->
{ok, Chan} = amqp_connection:open_channel(?config(conn, Config)),
[{_, ChData}] = rabbit_ct_broker_helpers:rpc(Config, 0, ets, tab2list, [channel_created]),
ChName = uri_string:recompose(#{path => binary_to_list(pget(name, ChData))}),
eventually(?_assertMatch(
#{},
begin
force_stats(Config),
%% assert channel is non empty
http_get(Config, "/channels/" ++ ChName )
end),
1000, 60),
amqp_channel:close(Chan),
ok.
channel_other_node(Config) ->
Q = <<"some-queue">>,
http_put(Config, "/queues/%2F/some-queue", none, [?CREATED, ?NO_CONTENT]),
Conn = rabbit_ct_client_helpers:open_unmanaged_connection(Config, 1),
2016-09-30 17:21:24 +08:00
{ok, Chan} = amqp_connection:open_channel(Conn),
[{_, ChData}] = rabbit_ct_broker_helpers:rpc(Config, 1, ets, tab2list,
[channel_created]),
ChName = uri_string:recompose(#{path => binary_to_list(pget(name, ChData))}),
consume(Chan, Q),
publish(Chan, Q),
eventually(?_assertMatch(
{[#{}], #{}},
begin
force_stats(Config),
case http_get(Config, "/channels/" ++ ChName) of
%% assert channel is non empty
#{} = Res ->
{maps:get(deliveries, Res),
maps:get(connection_details, Res)};
Any ->
{unexpected_channels, Any}
end
end),
1000, 60),
http_delete(Config, "/queues/%2F/some-queue", ?NO_CONTENT),
amqp_connection:close(Conn),
ok.
channel_with_consumer_on_other_node(Config) ->
{ok, Chan} = amqp_connection:open_channel(?config(conn, Config)),
Q = <<"some-queue">>,
_ = queue_declare(Chan, Q),
_ = wait_for_queue(Config, "/queues/%2F/some-queue"),
ChName = get_channel_name(Config, 0),
consume(Chan, Q),
publish(Chan, Q),
eventually(?_assertMatch(
[#{}],
begin
force_stats(Config),
case http_get(Config, "/channels/" ++ ChName) of
%% assert channel is non empty
#{} = Res ->
maps:get(consumer_details, Res);
Any ->
{unexpected_channels, Any}
end
end),
1000, 60),
http_delete(Config, "/queues/%2F/some-queue", ?NO_CONTENT),
amqp_channel:close(Chan),
ok.
channel_with_consumer_on_one_node(Config) ->
{ok, Chan} = amqp_connection:open_channel(?config(conn, Config)),
Q = <<"some-queue">>,
_ = queue_declare(Chan, Q),
_ = wait_for_queue(Config, "/queues/%2F/some-queue"),
ChName = get_channel_name(Config, 0),
consume(Chan, Q),
eventually(?_assertMatch(
[#{}],
begin
force_stats(Config),
Res = http_get(Config, "/channels/" ++ ChName),
%% assert channel is non empty
maps:get(consumer_details, Res)
end),
1000, 60),
amqp_channel:close(Chan),
http_delete(Config, "/queues/%2F/some-queue", ?NO_CONTENT),
ok.
2016-09-20 17:13:08 +08:00
consumers(Config) ->
Conn = rabbit_ct_client_helpers:open_unmanaged_connection(Config, 0),
{ok, Chan} = amqp_connection:open_channel(Conn),
_ = queue_declare(Chan, <<"some-queue">>),
_ = wait_for_queue(Config, "/queues/%2F/some-queue"),
Conn2 = rabbit_ct_client_helpers:open_unmanaged_connection(Config, 1),
{ok, Chan2} = amqp_connection:open_channel(Conn2),
2016-09-20 17:13:08 +08:00
consume(Chan, <<"some-queue">>),
consume(Chan2, <<"some-queue">>),
%% assert there are two non-empty consumer records
eventually(?_assertMatch([#{}, #{}],
begin
force_stats(Config),
http_get(Config, "/consumers")
end),
1000, 30),
eventually(?_assertMatch([#{}, #{}],
begin
[C1, C2] = http_get(Config, "/consumers"),
[maps:get(channel_details, C1),
maps:get(channel_details, C2)]
end),
1000, 30),
http_delete(Config, "/queues/%2F/some-queue", ?NO_CONTENT),
amqp_channel:close(Chan),
rabbit_ct_client_helpers:close_connection(Conn),
rabbit_ct_client_helpers:close_connection(Conn2),
2016-09-20 17:13:08 +08:00
ok.
2016-09-26 17:55:37 +08:00
connections(Config) ->
%% one connection is maintained by CT helpers
2016-09-26 17:55:37 +08:00
{ok, Chan} = amqp_connection:open_channel(?config(conn, Config)),
Conn2 = rabbit_ct_client_helpers:open_unmanaged_connection(Config, 0),
{ok, _Chan2} = amqp_connection:open_channel(Conn2),
%% assert there are two non-empty connection records
eventually(?_assertMatch([1, 1],
begin
force_stats(Config),
case http_get(Config, "/connections") of
[#{} = C1, #{} = C2] ->
[maps:get(channels, C1),
maps:get(channels, C2)];
Any ->
{unexpected_connections, Any}
end
end),
1000, 30),
amqp_channel:close(Chan),
rabbit_ct_client_helpers:close_connection(Conn2),
2016-09-26 17:55:37 +08:00
ok.
2016-09-26 19:50:32 +08:00
exchanges(Config) ->
{ok, _Chan0} = amqp_connection:open_channel(?config(conn, Config)),
Conn = rabbit_ct_client_helpers:open_unmanaged_connection(Config, 1),
{ok, Chan} = amqp_connection:open_channel(Conn),
QName = <<"exchanges-test">>,
XName = <<"some-exchange">>,
Q = queue_declare(Chan, QName),
exchange_declare(Chan, XName),
queue_bind(Chan, XName, Q, <<"some-key">>),
consume(Chan, QName),
publish_to(Chan, XName, <<"some-key">>),
eventually(?_assertEqual([<<"direct">>],
begin
force_stats(Config),
Res = http_get(Config, "/exchanges"),
[maps:get(type, X) || X <- Res, maps:get(name, X) =:= XName]
end),
1000, 30),
2016-09-26 19:50:32 +08:00
amqp_channel:close(Chan),
rabbit_ct_client_helpers:close_connection(Conn),
ok.
exchange(Config) ->
{ok, _Chan0} = amqp_connection:open_channel(?config(conn, Config)),
Conn = rabbit_ct_client_helpers:open_unmanaged_connection(Config, 1),
{ok, Chan} = amqp_connection:open_channel(Conn),
QName = <<"exchanges-test">>,
XName = <<"some-other-exchange">>,
Q = queue_declare(Chan, QName),
exchange_declare(Chan, XName),
queue_bind(Chan, XName, Q, <<"some-key">>),
consume(Chan, QName),
publish_to(Chan, XName, <<"some-key">>),
eventually(?_assertEqual(<<"direct">>,
begin
force_stats(Config),
maps:get(type, http_get(Config, "/exchanges/%2F/some-other-exchange"))
end),
1000, 30),
2016-09-26 19:50:32 +08:00
amqp_channel:close(Chan),
rabbit_ct_client_helpers:close_connection(Conn),
ok.
2016-09-26 23:31:25 +08:00
vhosts(Config) ->
Conn = rabbit_ct_client_helpers:open_unmanaged_connection(Config, 0),
{ok, Chan} = amqp_connection:open_channel(Conn),
_ = queue_declare(Chan, <<"some-queue">>),
_ = wait_for_queue(Config, "/queues/%2F/some-queue"),
Conn2 = rabbit_ct_client_helpers:open_unmanaged_connection(Config, 1),
{ok, Chan2} = amqp_connection:open_channel(Conn2),
2016-09-26 23:31:25 +08:00
publish(Chan2, <<"some-queue">>),
eventually(?_assertMatch(#{},
begin
force_stats(Config),
%% default vhost
case http_get(Config, "/vhosts") of
[#{} = Vhost] ->
%% assert vhost has some message stats
maps:get(message_stats, Vhost);
Any ->
{unexpected_vhosts, Any}
end
end),
1000, 30),
http_delete(Config, "/queues/%2F/some-queue", ?NO_CONTENT),
amqp_channel:close(Chan),
amqp_channel:close(Chan2),
rabbit_ct_client_helpers:close_connection(Conn),
2016-09-26 23:31:25 +08:00
ok.
2016-09-27 15:31:39 +08:00
nodes(Config) ->
Conn = rabbit_ct_client_helpers:open_unmanaged_connection(Config, 0),
{ok, Chan} = amqp_connection:open_channel(Conn),
_ = queue_declare(Chan, <<"some-queue">>),
_ = wait_for_queue(Config, "/queues/%2F/some-queue"),
2016-09-27 15:31:39 +08:00
{ok, Chan2} = amqp_connection:open_channel(Conn),
publish(Chan2, <<"some-queue">>),
eventually(?_assertMatch({true, true, [#{} | _], [#{} | _]},
begin
force_stats(Config),
case http_get(Config, "/nodes") of
[#{} = N1 , #{} = N2] ->
{is_binary(maps:get(name, N1)),
is_binary(maps:get(name, N2)),
maps:get(cluster_links, N1),
maps:get(cluster_links, N2)};
Any ->
{unexpected_nodes, Any}
end
end),
1000, 30),
2016-09-27 15:31:39 +08:00
http_delete(Config, "/queues/%2F/some-queue", ?NO_CONTENT),
amqp_channel:close(Chan),
amqp_channel:close(Chan2),
rabbit_ct_client_helpers:close_connection(Conn),
2016-09-27 15:31:39 +08:00
ok.
2016-09-27 20:59:46 +08:00
overview(Config) ->
Conn = rabbit_ct_client_helpers:open_unmanaged_connection(Config, 0),
{ok, Chan} = amqp_connection:open_channel(Conn),
_ = queue_declare(Chan, <<"queue-n1">>),
_ = queue_declare(Chan, <<"queue-n2">>),
_ = wait_for_queue(Config, "/queues/%2F/queue-n1"),
_ = wait_for_queue(Config, "/queues/%2F/queue-n2"),
Conn2 = rabbit_ct_client_helpers:open_unmanaged_connection(Config, 1),
{ok, Chan2} = amqp_connection:open_channel(Conn2),
2016-09-28 19:09:09 +08:00
publish(Chan, <<"queue-n1">>),
publish(Chan2, <<"queue-n2">>),
eventually(?_assertMatch(
{true, true, true, true, 2, 2, 0, 2, 0, 0},
begin
force_stats(Config), % channel count needs a bit longer for 2nd chan
Res = http_get(Config, "/overview"),
%% assert there are two non-empty connection records
ObjTots = maps:get(object_totals, Res),
QT = maps:get(queue_totals, Res),
MS = maps:get(message_stats, Res),
ChurnRates = maps:get(churn_rates, Res),
{maps:get(connections, ObjTots) >= 2,
maps:get(channels, ObjTots) >= 2,
maps:get(messages_ready, QT) >= 2,
maps:get(publish, MS) >= 2,
maps:get(queue_declared, ChurnRates),
maps:get(queue_created, ChurnRates),
maps:get(queue_deleted, ChurnRates),
maps:get(channel_created, ChurnRates),
maps:get(channel_closed, ChurnRates),
maps:get(connection_closed, ChurnRates)}
end),
1000, 60),
http_delete(Config, "/queues/%2F/queue-n1", ?NO_CONTENT),
http_delete(Config, "/queues/%2F/queue-n2", ?NO_CONTENT),
amqp_channel:close(Chan),
amqp_channel:close(Chan2),
rabbit_ct_client_helpers:close_connection(Conn),
rabbit_ct_client_helpers:close_connection(Conn2),
2016-09-27 20:59:46 +08:00
ok.
disable_plugin(Config) ->
Node = get_node_config(Config, 0, nodename),
Status0 = rabbit_ct_broker_helpers:rpc(Config, Node, rabbit, status, []),
Listeners0 = proplists:get_value(listeners, Status0),
?assert(lists:member(http, listener_protos(Listeners0))),
rabbit_ct_broker_helpers:disable_plugin(Config, Node, 'rabbitmq_web_dispatch'),
Status = rabbit_ct_broker_helpers:rpc(Config, Node, rabbit, status, []),
Listeners = proplists:get_value(listeners, Status),
?assert(not lists:member(http, listener_protos(Listeners))),
rabbit_ct_broker_helpers:enable_plugin(Config, Node, 'rabbitmq_management').
Switch test suite to Common Test, fixes #233 Squashed commit of the following: commit b104a7f84474e247dfef27cd389d6fac554ab634 Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 23 18:14:28 2016 +0300 Finish migration to CT Note: this intentionally deletes several tests that depend on ETS table state and clash with "real" stats GC processes running in parallel. Some of them are covered in other test suites, e.g. rabbit-hole, others can only really be tested with a separate simulation test suite. Per discussion with the team. commit 7585883e0f9432fd3360d18d340bcf599ad8d51f Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 23 15:50:53 2016 +0300 Down to 3 failing tests commit 3243f0efed7033229803404a431c1c6404c25677 Author: Michael Klishin <michael@clojurewerkz.org> Date: Tue Jun 21 01:02:42 2016 +0300 Attempts to simplify a few tests for CT commit 997c2b3782b4ce38708658dc90883980a267a461 Merge: 122c7b7 0ce4f6b Author: Michael Klishin <michael@clojurewerkz.org> Date: Fri Jun 17 14:45:06 2016 +0300 Merge branch 'stable' into common_test commit 122c7b7116778e9aff244822933eaf95567dc59d Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 16 18:19:28 2016 +0300 Begin porting test_db_SUITE commit 872f3e82966999cebd8ba966daac9410badaca09 Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 16 13:54:34 2016 +0300 Makes clustering_SUITE pass commit c8d6c89bda6e7571877221ed6b2513e53b1ebc46 Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 16 03:48:54 2016 +0300 Towards clustering_SUITE commit 7fcb6c834039d6cdf15371ce8640f6dfd9bdf939 Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 16 02:59:24 2016 +0300 Initial clustering_SUITE test passes commit 11205579e86bad4563e027d025b94f0e57ee8386 Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 16 02:59:12 2016 +0300 Add mochiweb to test dependencies commit 895ff82e6e6567336c2ac56532f82427a2c4f705 Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 16 01:09:46 2016 +0300 Refactor commit 6d9200cc8516ee5ea0676fbb0e9b3c88fb2a40a7 Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 16 00:55:08 2016 +0300 open_unmanaged_connection/1 is now available in rabbit_ct_client_helpers commit 40d03cd2fa2a6bc1d4c7c4a1eeb332c5182e1317 Author: Michael Klishin <michael@clojurewerkz.org> Date: Wed Jun 15 23:51:31 2016 +0300 All http_SUITE tests now pass commit 81e08ef36a08884c02fabd51662018751035b5b6 Author: Michael Klishin <michael@clojurewerkz.org> Date: Wed Jun 15 17:12:27 2016 +0300 More tests pass with Common Test commit aaea771db14624df0db944b4c4d0eb42191fb961 Author: Michael Klishin <michael@clojurewerkz.org> Date: Tue Jun 14 17:41:09 2016 +0300 Continue adapting to Common Test commit 0a57f3256a828a835ce44ef02b2e93a3cfe34ccf Author: Michael Klishin <michael@clojurewerkz.org> Date: Tue Jun 14 15:28:19 2016 +0300 Begin moving test suite to Common Test
2016-06-24 18:27:05 +08:00
%%----------------------------------------------------------------------------
2016-09-29 00:33:51 +08:00
%%
clear_all_table_data() ->
[ets:delete_all_objects(T) || {T, _} <- ?CORE_TABLES],
rabbit_mgmt_storage:reset(),
[gen_server:call(P, purge_cache)
|| {_, P, _, _} <- supervisor:which_children(rabbit_mgmt_db_cache_sup)],
send_to_all_collectors(purge_old_stats).
Switch test suite to Common Test, fixes #233 Squashed commit of the following: commit b104a7f84474e247dfef27cd389d6fac554ab634 Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 23 18:14:28 2016 +0300 Finish migration to CT Note: this intentionally deletes several tests that depend on ETS table state and clash with "real" stats GC processes running in parallel. Some of them are covered in other test suites, e.g. rabbit-hole, others can only really be tested with a separate simulation test suite. Per discussion with the team. commit 7585883e0f9432fd3360d18d340bcf599ad8d51f Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 23 15:50:53 2016 +0300 Down to 3 failing tests commit 3243f0efed7033229803404a431c1c6404c25677 Author: Michael Klishin <michael@clojurewerkz.org> Date: Tue Jun 21 01:02:42 2016 +0300 Attempts to simplify a few tests for CT commit 997c2b3782b4ce38708658dc90883980a267a461 Merge: 122c7b7 0ce4f6b Author: Michael Klishin <michael@clojurewerkz.org> Date: Fri Jun 17 14:45:06 2016 +0300 Merge branch 'stable' into common_test commit 122c7b7116778e9aff244822933eaf95567dc59d Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 16 18:19:28 2016 +0300 Begin porting test_db_SUITE commit 872f3e82966999cebd8ba966daac9410badaca09 Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 16 13:54:34 2016 +0300 Makes clustering_SUITE pass commit c8d6c89bda6e7571877221ed6b2513e53b1ebc46 Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 16 03:48:54 2016 +0300 Towards clustering_SUITE commit 7fcb6c834039d6cdf15371ce8640f6dfd9bdf939 Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 16 02:59:24 2016 +0300 Initial clustering_SUITE test passes commit 11205579e86bad4563e027d025b94f0e57ee8386 Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 16 02:59:12 2016 +0300 Add mochiweb to test dependencies commit 895ff82e6e6567336c2ac56532f82427a2c4f705 Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 16 01:09:46 2016 +0300 Refactor commit 6d9200cc8516ee5ea0676fbb0e9b3c88fb2a40a7 Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 16 00:55:08 2016 +0300 open_unmanaged_connection/1 is now available in rabbit_ct_client_helpers commit 40d03cd2fa2a6bc1d4c7c4a1eeb332c5182e1317 Author: Michael Klishin <michael@clojurewerkz.org> Date: Wed Jun 15 23:51:31 2016 +0300 All http_SUITE tests now pass commit 81e08ef36a08884c02fabd51662018751035b5b6 Author: Michael Klishin <michael@clojurewerkz.org> Date: Wed Jun 15 17:12:27 2016 +0300 More tests pass with Common Test commit aaea771db14624df0db944b4c4d0eb42191fb961 Author: Michael Klishin <michael@clojurewerkz.org> Date: Tue Jun 14 17:41:09 2016 +0300 Continue adapting to Common Test commit 0a57f3256a828a835ce44ef02b2e93a3cfe34ccf Author: Michael Klishin <michael@clojurewerkz.org> Date: Tue Jun 14 15:28:19 2016 +0300 Begin moving test suite to Common Test
2016-06-24 18:27:05 +08:00
get_channel_name(Config, Node) ->
[{_, ChData}|_] = rabbit_ct_broker_helpers:rpc(Config, Node, ets, tab2list,
[channel_created]),
uri_string:recompose(#{path => binary_to_list(pget(name, ChData))}).
consume(Channel, Queue) ->
#'basic.consume_ok'{consumer_tag = Tag} =
amqp_channel:call(Channel, #'basic.consume'{queue = Queue}),
Tag.
publish(Channel, Key) ->
2016-09-28 19:09:09 +08:00
Payload = <<"foobar">>,
Publish = #'basic.publish'{routing_key = Key},
amqp_channel:cast(Channel, Publish, #amqp_msg{payload = Payload}).
2016-09-26 19:50:32 +08:00
basic_get(Channel, Queue) ->
Publish = #'basic.get'{queue = Queue},
amqp_channel:call(Channel, Publish).
2016-09-26 19:50:32 +08:00
publish_to(Channel, Exchange, Key) ->
Payload = <<"foobar">>,
2016-09-26 19:50:32 +08:00
Publish = #'basic.publish'{routing_key = Key,
exchange = Exchange},
amqp_channel:cast(Channel, Publish, #amqp_msg{payload = Payload}).
2016-09-26 19:50:32 +08:00
exchange_declare(Chan, Name) ->
Declare = #'exchange.declare'{exchange = Name},
#'exchange.declare_ok'{} = amqp_channel:call(Chan, Declare).
2016-10-03 23:14:44 +08:00
queue_declare(Chan) ->
Declare = #'queue.declare'{},
#'queue.declare_ok'{queue = Q} = amqp_channel:call(Chan, Declare),
Q.
2016-09-26 19:50:32 +08:00
queue_declare(Chan, Name) ->
Declare = #'queue.declare'{queue = Name},
#'queue.declare_ok'{queue = Q} = amqp_channel:call(Chan, Declare),
Q.
queue_declare_durable(Chan, Name) ->
Declare = #'queue.declare'{queue = Name, durable = true, exclusive = false},
#'queue.declare_ok'{queue = Q} = amqp_channel:call(Chan, Declare),
Q.
queue_declare_quorum(Chan, Name) ->
Declare = #'queue.declare'{
queue = Name,
durable = true,
arguments = [
{<<"x-queue-type">>, longstr, <<"quorum">>}
]
},
#'queue.declare_ok'{queue = Q} = amqp_channel:call(Chan, Declare),
Q.
2016-09-26 19:50:32 +08:00
queue_bind(Chan, Ex, Q, Key) ->
Binding = #'queue.bind'{queue = Q,
exchange = Ex,
routing_key = Key},
#'queue.bind_ok'{} = amqp_channel:call(Chan, Binding).
wait_for_queue(Config, Path) ->
wait_for_queue(Config, Path, []).
Switch test suite to Common Test, fixes #233 Squashed commit of the following: commit b104a7f84474e247dfef27cd389d6fac554ab634 Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 23 18:14:28 2016 +0300 Finish migration to CT Note: this intentionally deletes several tests that depend on ETS table state and clash with "real" stats GC processes running in parallel. Some of them are covered in other test suites, e.g. rabbit-hole, others can only really be tested with a separate simulation test suite. Per discussion with the team. commit 7585883e0f9432fd3360d18d340bcf599ad8d51f Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 23 15:50:53 2016 +0300 Down to 3 failing tests commit 3243f0efed7033229803404a431c1c6404c25677 Author: Michael Klishin <michael@clojurewerkz.org> Date: Tue Jun 21 01:02:42 2016 +0300 Attempts to simplify a few tests for CT commit 997c2b3782b4ce38708658dc90883980a267a461 Merge: 122c7b7 0ce4f6b Author: Michael Klishin <michael@clojurewerkz.org> Date: Fri Jun 17 14:45:06 2016 +0300 Merge branch 'stable' into common_test commit 122c7b7116778e9aff244822933eaf95567dc59d Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 16 18:19:28 2016 +0300 Begin porting test_db_SUITE commit 872f3e82966999cebd8ba966daac9410badaca09 Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 16 13:54:34 2016 +0300 Makes clustering_SUITE pass commit c8d6c89bda6e7571877221ed6b2513e53b1ebc46 Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 16 03:48:54 2016 +0300 Towards clustering_SUITE commit 7fcb6c834039d6cdf15371ce8640f6dfd9bdf939 Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 16 02:59:24 2016 +0300 Initial clustering_SUITE test passes commit 11205579e86bad4563e027d025b94f0e57ee8386 Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 16 02:59:12 2016 +0300 Add mochiweb to test dependencies commit 895ff82e6e6567336c2ac56532f82427a2c4f705 Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 16 01:09:46 2016 +0300 Refactor commit 6d9200cc8516ee5ea0676fbb0e9b3c88fb2a40a7 Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 16 00:55:08 2016 +0300 open_unmanaged_connection/1 is now available in rabbit_ct_client_helpers commit 40d03cd2fa2a6bc1d4c7c4a1eeb332c5182e1317 Author: Michael Klishin <michael@clojurewerkz.org> Date: Wed Jun 15 23:51:31 2016 +0300 All http_SUITE tests now pass commit 81e08ef36a08884c02fabd51662018751035b5b6 Author: Michael Klishin <michael@clojurewerkz.org> Date: Wed Jun 15 17:12:27 2016 +0300 More tests pass with Common Test commit aaea771db14624df0db944b4c4d0eb42191fb961 Author: Michael Klishin <michael@clojurewerkz.org> Date: Tue Jun 14 17:41:09 2016 +0300 Continue adapting to Common Test commit 0a57f3256a828a835ce44ef02b2e93a3cfe34ccf Author: Michael Klishin <michael@clojurewerkz.org> Date: Tue Jun 14 15:28:19 2016 +0300 Begin moving test suite to Common Test
2016-06-24 18:27:05 +08:00
wait_for_queue(Config, Path, Keys) ->
wait_for_queue(Config, Path, Keys, 1000).
wait_for_queue(_Config, Path, Keys, 0) ->
Switch test suite to Common Test, fixes #233 Squashed commit of the following: commit b104a7f84474e247dfef27cd389d6fac554ab634 Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 23 18:14:28 2016 +0300 Finish migration to CT Note: this intentionally deletes several tests that depend on ETS table state and clash with "real" stats GC processes running in parallel. Some of them are covered in other test suites, e.g. rabbit-hole, others can only really be tested with a separate simulation test suite. Per discussion with the team. commit 7585883e0f9432fd3360d18d340bcf599ad8d51f Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 23 15:50:53 2016 +0300 Down to 3 failing tests commit 3243f0efed7033229803404a431c1c6404c25677 Author: Michael Klishin <michael@clojurewerkz.org> Date: Tue Jun 21 01:02:42 2016 +0300 Attempts to simplify a few tests for CT commit 997c2b3782b4ce38708658dc90883980a267a461 Merge: 122c7b7 0ce4f6b Author: Michael Klishin <michael@clojurewerkz.org> Date: Fri Jun 17 14:45:06 2016 +0300 Merge branch 'stable' into common_test commit 122c7b7116778e9aff244822933eaf95567dc59d Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 16 18:19:28 2016 +0300 Begin porting test_db_SUITE commit 872f3e82966999cebd8ba966daac9410badaca09 Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 16 13:54:34 2016 +0300 Makes clustering_SUITE pass commit c8d6c89bda6e7571877221ed6b2513e53b1ebc46 Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 16 03:48:54 2016 +0300 Towards clustering_SUITE commit 7fcb6c834039d6cdf15371ce8640f6dfd9bdf939 Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 16 02:59:24 2016 +0300 Initial clustering_SUITE test passes commit 11205579e86bad4563e027d025b94f0e57ee8386 Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 16 02:59:12 2016 +0300 Add mochiweb to test dependencies commit 895ff82e6e6567336c2ac56532f82427a2c4f705 Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 16 01:09:46 2016 +0300 Refactor commit 6d9200cc8516ee5ea0676fbb0e9b3c88fb2a40a7 Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 16 00:55:08 2016 +0300 open_unmanaged_connection/1 is now available in rabbit_ct_client_helpers commit 40d03cd2fa2a6bc1d4c7c4a1eeb332c5182e1317 Author: Michael Klishin <michael@clojurewerkz.org> Date: Wed Jun 15 23:51:31 2016 +0300 All http_SUITE tests now pass commit 81e08ef36a08884c02fabd51662018751035b5b6 Author: Michael Klishin <michael@clojurewerkz.org> Date: Wed Jun 15 17:12:27 2016 +0300 More tests pass with Common Test commit aaea771db14624df0db944b4c4d0eb42191fb961 Author: Michael Klishin <michael@clojurewerkz.org> Date: Tue Jun 14 17:41:09 2016 +0300 Continue adapting to Common Test commit 0a57f3256a828a835ce44ef02b2e93a3cfe34ccf Author: Michael Klishin <michael@clojurewerkz.org> Date: Tue Jun 14 15:28:19 2016 +0300 Begin moving test suite to Common Test
2016-06-24 18:27:05 +08:00
exit({timeout, {Path, Keys}});
wait_for_queue(Config, Path, Keys, Count) ->
Switch test suite to Common Test, fixes #233 Squashed commit of the following: commit b104a7f84474e247dfef27cd389d6fac554ab634 Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 23 18:14:28 2016 +0300 Finish migration to CT Note: this intentionally deletes several tests that depend on ETS table state and clash with "real" stats GC processes running in parallel. Some of them are covered in other test suites, e.g. rabbit-hole, others can only really be tested with a separate simulation test suite. Per discussion with the team. commit 7585883e0f9432fd3360d18d340bcf599ad8d51f Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 23 15:50:53 2016 +0300 Down to 3 failing tests commit 3243f0efed7033229803404a431c1c6404c25677 Author: Michael Klishin <michael@clojurewerkz.org> Date: Tue Jun 21 01:02:42 2016 +0300 Attempts to simplify a few tests for CT commit 997c2b3782b4ce38708658dc90883980a267a461 Merge: 122c7b7 0ce4f6b Author: Michael Klishin <michael@clojurewerkz.org> Date: Fri Jun 17 14:45:06 2016 +0300 Merge branch 'stable' into common_test commit 122c7b7116778e9aff244822933eaf95567dc59d Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 16 18:19:28 2016 +0300 Begin porting test_db_SUITE commit 872f3e82966999cebd8ba966daac9410badaca09 Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 16 13:54:34 2016 +0300 Makes clustering_SUITE pass commit c8d6c89bda6e7571877221ed6b2513e53b1ebc46 Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 16 03:48:54 2016 +0300 Towards clustering_SUITE commit 7fcb6c834039d6cdf15371ce8640f6dfd9bdf939 Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 16 02:59:24 2016 +0300 Initial clustering_SUITE test passes commit 11205579e86bad4563e027d025b94f0e57ee8386 Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 16 02:59:12 2016 +0300 Add mochiweb to test dependencies commit 895ff82e6e6567336c2ac56532f82427a2c4f705 Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 16 01:09:46 2016 +0300 Refactor commit 6d9200cc8516ee5ea0676fbb0e9b3c88fb2a40a7 Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 16 00:55:08 2016 +0300 open_unmanaged_connection/1 is now available in rabbit_ct_client_helpers commit 40d03cd2fa2a6bc1d4c7c4a1eeb332c5182e1317 Author: Michael Klishin <michael@clojurewerkz.org> Date: Wed Jun 15 23:51:31 2016 +0300 All http_SUITE tests now pass commit 81e08ef36a08884c02fabd51662018751035b5b6 Author: Michael Klishin <michael@clojurewerkz.org> Date: Wed Jun 15 17:12:27 2016 +0300 More tests pass with Common Test commit aaea771db14624df0db944b4c4d0eb42191fb961 Author: Michael Klishin <michael@clojurewerkz.org> Date: Tue Jun 14 17:41:09 2016 +0300 Continue adapting to Common Test commit 0a57f3256a828a835ce44ef02b2e93a3cfe34ccf Author: Michael Klishin <michael@clojurewerkz.org> Date: Tue Jun 14 15:28:19 2016 +0300 Begin moving test suite to Common Test
2016-06-24 18:27:05 +08:00
Res = http_get(Config, Path),
case present(Keys, Res) of
false -> timer:sleep(10),
wait_for_queue(Config, Path, Keys, Count - 1);
Switch test suite to Common Test, fixes #233 Squashed commit of the following: commit b104a7f84474e247dfef27cd389d6fac554ab634 Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 23 18:14:28 2016 +0300 Finish migration to CT Note: this intentionally deletes several tests that depend on ETS table state and clash with "real" stats GC processes running in parallel. Some of them are covered in other test suites, e.g. rabbit-hole, others can only really be tested with a separate simulation test suite. Per discussion with the team. commit 7585883e0f9432fd3360d18d340bcf599ad8d51f Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 23 15:50:53 2016 +0300 Down to 3 failing tests commit 3243f0efed7033229803404a431c1c6404c25677 Author: Michael Klishin <michael@clojurewerkz.org> Date: Tue Jun 21 01:02:42 2016 +0300 Attempts to simplify a few tests for CT commit 997c2b3782b4ce38708658dc90883980a267a461 Merge: 122c7b7 0ce4f6b Author: Michael Klishin <michael@clojurewerkz.org> Date: Fri Jun 17 14:45:06 2016 +0300 Merge branch 'stable' into common_test commit 122c7b7116778e9aff244822933eaf95567dc59d Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 16 18:19:28 2016 +0300 Begin porting test_db_SUITE commit 872f3e82966999cebd8ba966daac9410badaca09 Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 16 13:54:34 2016 +0300 Makes clustering_SUITE pass commit c8d6c89bda6e7571877221ed6b2513e53b1ebc46 Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 16 03:48:54 2016 +0300 Towards clustering_SUITE commit 7fcb6c834039d6cdf15371ce8640f6dfd9bdf939 Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 16 02:59:24 2016 +0300 Initial clustering_SUITE test passes commit 11205579e86bad4563e027d025b94f0e57ee8386 Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 16 02:59:12 2016 +0300 Add mochiweb to test dependencies commit 895ff82e6e6567336c2ac56532f82427a2c4f705 Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 16 01:09:46 2016 +0300 Refactor commit 6d9200cc8516ee5ea0676fbb0e9b3c88fb2a40a7 Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 16 00:55:08 2016 +0300 open_unmanaged_connection/1 is now available in rabbit_ct_client_helpers commit 40d03cd2fa2a6bc1d4c7c4a1eeb332c5182e1317 Author: Michael Klishin <michael@clojurewerkz.org> Date: Wed Jun 15 23:51:31 2016 +0300 All http_SUITE tests now pass commit 81e08ef36a08884c02fabd51662018751035b5b6 Author: Michael Klishin <michael@clojurewerkz.org> Date: Wed Jun 15 17:12:27 2016 +0300 More tests pass with Common Test commit aaea771db14624df0db944b4c4d0eb42191fb961 Author: Michael Klishin <michael@clojurewerkz.org> Date: Tue Jun 14 17:41:09 2016 +0300 Continue adapting to Common Test commit 0a57f3256a828a835ce44ef02b2e93a3cfe34ccf Author: Michael Klishin <michael@clojurewerkz.org> Date: Tue Jun 14 15:28:19 2016 +0300 Begin moving test suite to Common Test
2016-06-24 18:27:05 +08:00
true -> Res
end.
present([], _Res) ->
true;
Switch test suite to Common Test, fixes #233 Squashed commit of the following: commit b104a7f84474e247dfef27cd389d6fac554ab634 Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 23 18:14:28 2016 +0300 Finish migration to CT Note: this intentionally deletes several tests that depend on ETS table state and clash with "real" stats GC processes running in parallel. Some of them are covered in other test suites, e.g. rabbit-hole, others can only really be tested with a separate simulation test suite. Per discussion with the team. commit 7585883e0f9432fd3360d18d340bcf599ad8d51f Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 23 15:50:53 2016 +0300 Down to 3 failing tests commit 3243f0efed7033229803404a431c1c6404c25677 Author: Michael Klishin <michael@clojurewerkz.org> Date: Tue Jun 21 01:02:42 2016 +0300 Attempts to simplify a few tests for CT commit 997c2b3782b4ce38708658dc90883980a267a461 Merge: 122c7b7 0ce4f6b Author: Michael Klishin <michael@clojurewerkz.org> Date: Fri Jun 17 14:45:06 2016 +0300 Merge branch 'stable' into common_test commit 122c7b7116778e9aff244822933eaf95567dc59d Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 16 18:19:28 2016 +0300 Begin porting test_db_SUITE commit 872f3e82966999cebd8ba966daac9410badaca09 Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 16 13:54:34 2016 +0300 Makes clustering_SUITE pass commit c8d6c89bda6e7571877221ed6b2513e53b1ebc46 Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 16 03:48:54 2016 +0300 Towards clustering_SUITE commit 7fcb6c834039d6cdf15371ce8640f6dfd9bdf939 Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 16 02:59:24 2016 +0300 Initial clustering_SUITE test passes commit 11205579e86bad4563e027d025b94f0e57ee8386 Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 16 02:59:12 2016 +0300 Add mochiweb to test dependencies commit 895ff82e6e6567336c2ac56532f82427a2c4f705 Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 16 01:09:46 2016 +0300 Refactor commit 6d9200cc8516ee5ea0676fbb0e9b3c88fb2a40a7 Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 16 00:55:08 2016 +0300 open_unmanaged_connection/1 is now available in rabbit_ct_client_helpers commit 40d03cd2fa2a6bc1d4c7c4a1eeb332c5182e1317 Author: Michael Klishin <michael@clojurewerkz.org> Date: Wed Jun 15 23:51:31 2016 +0300 All http_SUITE tests now pass commit 81e08ef36a08884c02fabd51662018751035b5b6 Author: Michael Klishin <michael@clojurewerkz.org> Date: Wed Jun 15 17:12:27 2016 +0300 More tests pass with Common Test commit aaea771db14624df0db944b4c4d0eb42191fb961 Author: Michael Klishin <michael@clojurewerkz.org> Date: Tue Jun 14 17:41:09 2016 +0300 Continue adapting to Common Test commit 0a57f3256a828a835ce44ef02b2e93a3cfe34ccf Author: Michael Klishin <michael@clojurewerkz.org> Date: Tue Jun 14 15:28:19 2016 +0300 Begin moving test suite to Common Test
2016-06-24 18:27:05 +08:00
present(Keys, Res) ->
lists:all(fun (Key) ->
X = maps:get(Key, Res, undefined),
Switch test suite to Common Test, fixes #233 Squashed commit of the following: commit b104a7f84474e247dfef27cd389d6fac554ab634 Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 23 18:14:28 2016 +0300 Finish migration to CT Note: this intentionally deletes several tests that depend on ETS table state and clash with "real" stats GC processes running in parallel. Some of them are covered in other test suites, e.g. rabbit-hole, others can only really be tested with a separate simulation test suite. Per discussion with the team. commit 7585883e0f9432fd3360d18d340bcf599ad8d51f Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 23 15:50:53 2016 +0300 Down to 3 failing tests commit 3243f0efed7033229803404a431c1c6404c25677 Author: Michael Klishin <michael@clojurewerkz.org> Date: Tue Jun 21 01:02:42 2016 +0300 Attempts to simplify a few tests for CT commit 997c2b3782b4ce38708658dc90883980a267a461 Merge: 122c7b7 0ce4f6b Author: Michael Klishin <michael@clojurewerkz.org> Date: Fri Jun 17 14:45:06 2016 +0300 Merge branch 'stable' into common_test commit 122c7b7116778e9aff244822933eaf95567dc59d Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 16 18:19:28 2016 +0300 Begin porting test_db_SUITE commit 872f3e82966999cebd8ba966daac9410badaca09 Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 16 13:54:34 2016 +0300 Makes clustering_SUITE pass commit c8d6c89bda6e7571877221ed6b2513e53b1ebc46 Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 16 03:48:54 2016 +0300 Towards clustering_SUITE commit 7fcb6c834039d6cdf15371ce8640f6dfd9bdf939 Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 16 02:59:24 2016 +0300 Initial clustering_SUITE test passes commit 11205579e86bad4563e027d025b94f0e57ee8386 Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 16 02:59:12 2016 +0300 Add mochiweb to test dependencies commit 895ff82e6e6567336c2ac56532f82427a2c4f705 Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 16 01:09:46 2016 +0300 Refactor commit 6d9200cc8516ee5ea0676fbb0e9b3c88fb2a40a7 Author: Michael Klishin <michael@clojurewerkz.org> Date: Thu Jun 16 00:55:08 2016 +0300 open_unmanaged_connection/1 is now available in rabbit_ct_client_helpers commit 40d03cd2fa2a6bc1d4c7c4a1eeb332c5182e1317 Author: Michael Klishin <michael@clojurewerkz.org> Date: Wed Jun 15 23:51:31 2016 +0300 All http_SUITE tests now pass commit 81e08ef36a08884c02fabd51662018751035b5b6 Author: Michael Klishin <michael@clojurewerkz.org> Date: Wed Jun 15 17:12:27 2016 +0300 More tests pass with Common Test commit aaea771db14624df0db944b4c4d0eb42191fb961 Author: Michael Klishin <michael@clojurewerkz.org> Date: Tue Jun 14 17:41:09 2016 +0300 Continue adapting to Common Test commit 0a57f3256a828a835ce44ef02b2e93a3cfe34ccf Author: Michael Klishin <michael@clojurewerkz.org> Date: Tue Jun 14 15:28:19 2016 +0300 Begin moving test suite to Common Test
2016-06-24 18:27:05 +08:00
X =/= [] andalso X =/= undefined
end, Keys).
extract_node(N) ->
list_to_atom(hd(string:tokens(binary_to_list(N), "@"))).
%% debugging utilities
trace_fun(Config, MFs) ->
Nodename1 = get_node_config(Config, 0, nodename),
Nodename2 = get_node_config(Config, 1, nodename),
dbg:tracer(process, {fun(A,_) ->
ct:pal(?LOW_IMPORTANCE,
"TRACE: ~tp", [A])
end, ok}),
dbg:n(Nodename1),
dbg:n(Nodename2),
dbg:p(all,c),
[ dbg:tpl(M, F, cx) || {M, F} <- MFs],
[ dbg:tpl(M, F, A, cx) || {M, F, A} <- MFs].
dump_table(Config, Table) ->
Data = rabbit_ct_broker_helpers:rpc(Config, 0, ets, tab2list, [Table]),
ct:pal(?LOW_IMPORTANCE, "Node 0: Dump of table ~tp:~n~tp~n", [Table, Data]),
Data0 = rabbit_ct_broker_helpers:rpc(Config, 1, ets, tab2list, [Table]),
ct:pal(?LOW_IMPORTANCE, "Node 1: Dump of table ~tp:~n~tp~n", [Table, Data0]).
force_stats(Config) ->
Nodes = rabbit_ct_broker_helpers:get_node_configs(Config, nodename),
force_all(Nodes),
ok.
force_all(Nodes) ->
lists:append(
[begin
ExtStats = {rabbit_mgmt_external_stats, N},
ExtStats ! emit_update,
[ExtStats |
[begin
Name = {rabbit_mgmt_metrics_collector:name(Table), N},
Name ! collect_metrics,
Name
end
|| {Table, _} <- ?CORE_TABLES]]
end || N <- Nodes]).
send_to_all_collectors(Msg) ->
[begin
[{rabbit_mgmt_metrics_collector:name(Table), N} ! Msg
|| {Table, _} <- ?CORE_TABLES]
end || N <- [node() | nodes()]].
listener_protos(Listeners) ->
[listener_proto(L) || L <- Listeners].
listener_proto(#listener{protocol = Proto}) ->
Proto;
listener_proto(Proto) when is_atom(Proto) ->
Proto;
%% rabbit:status/0 used this formatting before rabbitmq/rabbitmq-cli#340
listener_proto({Proto, _Port, _Interface}) ->
Proto.