diff --git a/docs/version_history.rst b/docs/version_history.rst
index 317b2c1..ae19d64 100644
--- a/docs/version_history.rst
+++ b/docs/version_history.rst
@@ -10,10 +10,14 @@ Version History
 - ``BlockingConnection.consume`` now returns ``(None, None, None)`` when inactivity timeout is reached (`PR <https://github.com/pika/pika/pull/899>`_)
 - Python 3.7 support (`Issue <https://github.com/pika/pika/issues/1107>`_)
 - ``all_channels`` parameter of the ``Channel.basic_qos`` method renamed to ``global_qos``
+- ``global_`` parameter of the ``Basic.Qos`` spec class renamed to ``global_qos``
 - **NOTE:** ``heartbeat_interval`` is removed, use ``heartbeat`` instead.
 - **NOTE:** The `backpressure_detection` option of `ConnectionParameters` and `URLParameters` property is REMOVED in favor of `Connection.Blocked` and `Connection.Unblocked`. See `Connection.add_on_connection_blocked_callback`.
 - **NOTE:** The legacy ``basic_publish`` method is removed, and ``publish`` renamed to ``basic_publish``
 - **NOTE**: The signature of the following methods has changed from Pika 0.13.0. In general, the callback parameter that indicates completion of the method has been moved to the end of the parameter list to be consistent with other parts of Pika's API and with other libraries in general.
+
+**IMPORTANT**: The signature of the following methods has changed from Pika 0.13.0. In general, the callback parameter that indicates completion of the method has been moved to the end of the parameter list to be consistent with other parts of Pika's API and with other libraries in general.
+
 - ``basic_cancel``
 - ``basic_consume``
 - ``basic_get``
@@ -31,6 +35,8 @@ Version History
 - ``queue_purge``
 - ``queue_unbind``
 
+**IMPORTANT**: When specifying TLS / SSL options, the ``SSLOptions`` class must be used, and a ``dict`` is no longer supported.
+
 0.12.0 2018-06-19
 -----------------
 
diff --git a/examples/consumer_simple.py b/examples/consumer_simple.py
index 8d9c00f..a987134 100644
--- a/examples/consumer_simple.py
+++ b/examples/consumer_simple.py
@@ -27,7 +27,7 @@ def hello():
     print('Hello world')
 
 
-connection.add_timeout(5, hello)
+connection.call_later(5, hello)
 
 
 def callback(ch, method, properties, body):
diff --git a/examples/send.py b/examples/send.py
index 57098f8..3984972 100644
--- a/examples/send.py
+++ b/examples/send.py
@@ -13,7 +13,7 @@ def closeit():
     print('Close it')
     connection.close()
 
-connection.add_timeout(5, closeit)
+connection.call_later(5, closeit)
 
 connection.sleep(100)
 
diff --git a/pika/adapters/base_connection.py b/pika/adapters/base_connection.py
index da8667e..b925235 100644
--- a/pika/adapters/base_connection.py
+++ b/pika/adapters/base_connection.py
@@ -198,12 +198,12 @@ class BaseConnection(connection.Connection):
         """
         return self._nbio.get_native_ioloop()
 
-    def _adapter_add_timeout(self, deadline, callback):
+    def _adapter_call_later(self, delay, callback):
         """Implement
-        :py:meth:`pika.connection.Connection._adapter_add_timeout()`.
+        :py:meth:`pika.connection.Connection._adapter_call_later()`.
 
         """
-        return self._nbio.call_later(deadline, callback)
+        return self._nbio.call_later(delay, callback)
 
     def _adapter_remove_timeout(self, timeout_id):
         """Implement
diff --git a/pika/adapters/blocking_connection.py b/pika/adapters/blocking_connection.py
index 0684bed..4a7e103 100644
--- a/pika/adapters/blocking_connection.py
+++ b/pika/adapters/blocking_connection.py
@@ -176,7 +176,7 @@ class _IoloopTimerContext(object):
         :param float duration: non-negative timer duration in seconds
         :param select_connection.SelectConnection connection:
         """
-        assert hasattr(connection, '_adapter_add_timeout'), connection
+        assert hasattr(connection, '_adapter_call_later'), connection
         self._duration = duration
         self._connection = connection
         self._callback_result = _CallbackResult()
@@ -184,7 +184,7 @@ class _IoloopTimerContext(object):
 
     def __enter__(self):
         """Register a timer"""
-        self._timer_handle = self._connection._adapter_add_timeout(
+        self._timer_handle = self._connection._adapter_call_later(
             self._duration, self._callback_result.signal_once)
         return self
 
@@ -202,17 +202,17 @@ class _IoloopTimerContext(object):
 
 
 class _TimerEvt(object):
-    """Represents a timer created via `BlockingConnection.add_timeout`"""
+    """Represents a timer created via `BlockingConnection.call_later`"""
     __slots__ = ('timer_id', '_callback')
 
     def __init__(self, callback):
         """
-        :param callback: see callback in `BlockingConnection.add_timeout`
+        :param callback: see callback in `BlockingConnection.call_later`
         """
         self._callback = callback
 
         # Will be set to timer id returned from the underlying implementation's
-        # `_adapter_add_timeout` method
+        # `_adapter_call_later` method
         self.timer_id = None
 
     def __repr__(self):
@@ -279,7 +279,7 @@ class BlockingConnection(object):
     in nested context (e.g., while waiting for `BlockingConnection.channel` or
     `BlockingChannel.queue_declare` to complete), dispatching them synchronously
     once nesting returns to the desired context. This concerns all callbacks,
-    such as those registered via `BlockingConnection.add_timeout`,
+    such as those registered via `BlockingConnection.call_later`,
     `BlockingConnection.add_on_connection_blocked_callback`,
     `BlockingConnection.add_on_connection_unblocked_callback`,
     `BlockingChannel.basic_consume`, etc.
@@ -564,7 +564,7 @@ class BlockingConnection(object):
 
     def _on_timer_ready(self, evt):
         """Handle expiry of a timer that was registered via
-        `_adapter_add_timeout()`
+        `_adapter_call_later()`
 
         :param _TimerEvt evt:
 
@@ -581,7 +581,7 @@ class BlockingConnection(object):
         """
         # Turn it into a 0-delay timeout to take advantage of our existing logic
         # that deals with reentrancy
-        self.add_timeout(0, user_callback)
+        self.call_later(0, user_callback)
 
     def _on_connection_blocked(self, user_callback, _impl, method_frame):
         """Handle Connection.Blocked notification from RabbitMQ broker
@@ -673,8 +673,8 @@ class BlockingConnection(object):
             functools.partial(self._on_connection_unblocked,
                               functools.partial(callback, self)))
 
-    def add_timeout(self, deadline, callback):
-        """Create a single-shot timer to fire after deadline seconds. Do not
+    def call_later(self, delay, callback):
+        """Create a single-shot timer to fire after delay seconds. Do not
         confuse with Tornado's timeout where you pass in the time you want to
         have your callback called. Only pass in the seconds until it's to be
         called.
@@ -684,7 +684,7 @@ class BlockingConnection(object):
         `BlockingConnection.process_data_events()` and
         `BlockingChannel.start_consuming()`.
 
-        :param float deadline: The number of seconds to wait to call callback
+        :param float delay: The number of seconds to wait to call callback
         :param callable callback: The callback method with the signature
             callback()
 
@@ -694,8 +694,8 @@ class BlockingConnection(object):
         validators.require_callback(callback)
 
         evt = _TimerEvt(callback=callback)
-        timer_id = self._impl._adapter_add_timeout(
-            deadline, functools.partial(self._on_timer_ready, evt))
+        timer_id = self._impl._adapter_call_later(
+            delay, functools.partial(self._on_timer_ready, evt))
         evt.timer_id = timer_id
 
         return timer_id
@@ -724,7 +724,7 @@ class BlockingConnection(object):
 
         NOTE: if you know that the requester is running on the same thread as
         the connection it is more efficient to use the
-        `BlockingConnection.add_timeout()` method with a deadline of 0.
+        `BlockingConnection.call_later()` method with a delay of 0.
 
         :param method callback: The callback method; must be callable
 
diff --git a/pika/adapters/twisted_connection.py b/pika/adapters/twisted_connection.py
index 8f43de7..583fa58 100644
--- a/pika/adapters/twisted_connection.py
+++ b/pika/adapters/twisted_connection.py
@@ -1084,13 +1084,13 @@ class _TwistedConnectionAdapter(pika.connection.Connection):
         self._reactor = custom_reactor or reactor
         self._transport = None  # to be provided by `connection_made()`
 
-    def _adapter_add_timeout(self, deadline, callback):
+    def _adapter_call_later(self, delay, callback):
         """Implement
-        :py:meth:`pika.connection.Connection._adapter_add_timeout()`.
+        :py:meth:`pika.connection.Connection._adapter_call_later()`.
 
         """
         check_callback_arg(callback, 'callback')
-        return _TimerHandle(self._reactor.callLater(deadline, callback))
+        return _TimerHandle(self._reactor.callLater(delay, callback))
 
     def _adapter_remove_timeout(self, timeout_id):
         """Implement
diff --git a/pika/connection.py b/pika/connection.py
index e94385a..6945099 100644
--- a/pika/connection.py
+++ b/pika/connection.py
@@ -1385,12 +1385,12 @@ class Connection(pika.compat.AbstractBase):
         return self.server_capabilities.get('publisher_confirms', False)
 
     @abc.abstractmethod
-    def _adapter_add_timeout(self, deadline, callback):
+    def _adapter_call_later(self, delay, callback):
         """Adapters should override to call the callback after the
         specified number of seconds have elapsed, using a timer, or a
         thread, or similar.
 
-        :param float | int deadline: The number of seconds to wait to call
+        :param float | int delay: The number of seconds to wait to call
             callback
         :param method callback: The callback will be called without args.
         :return: Handle that can be passed to `_adapter_remove_timeout()` to
@@ -1740,7 +1740,7 @@ class Connection(pika.compat.AbstractBase):
                            '_on_connection_blocked is called',
                            self._blocked_conn_timer)
         else:
-            self._blocked_conn_timer = self._adapter_add_timeout(
+            self._blocked_conn_timer = self._adapter_call_later(
                 self.params.blocked_connection_timeout,
                 self._on_blocked_connection_timeout)
 
diff --git a/pika/heartbeat.py b/pika/heartbeat.py
index 9580069..19a243a 100644
--- a/pika/heartbeat.py
+++ b/pika/heartbeat.py
@@ -187,7 +187,7 @@ class HeartbeatChecker(object):
 
     def _start_send_timer(self):
         """Start a new heartbeat send timer."""
-        self._send_timer = self._connection._adapter_add_timeout(  # pylint: disable=W0212
+        self._send_timer = self._connection._adapter_call_later(  # pylint: disable=W0212
             self._send_interval,
             self._send_heartbeat)
 
@@ -199,7 +199,7 @@ class HeartbeatChecker(object):
         # end of the window
         self._update_counters()
 
-        self._check_timer = self._connection._adapter_add_timeout(  # pylint: disable=W0212
+        self._check_timer = self._connection._adapter_call_later(  # pylint: disable=W0212
             self._check_interval,
             self._check_heartbeat)
 

Rename add_timeout(self, deadline, callback) to call_later(self, delay, callback)
See [this comment](https://github.com/pika/pika/pull/1045#discussion_r188309728) from @vitaly-krugl 
diff --git a/tests/acceptance/async_adapter_tests.py b/tests/acceptance/async_adapter_tests.py
index b87ff3b..014aa4b 100644
--- a/tests/acceptance/async_adapter_tests.py
+++ b/tests/acceptance/async_adapter_tests.py
@@ -982,7 +982,7 @@ class TestBlockedConnectionUnblocks(AsyncTestCase, AsyncAdapters):  # pylint: di
             pika.frame.Method(0, spec.Connection.Unblocked()))
 
         # Schedule shutdown after blocked connection timeout would expire
-        channel.connection._adapter_add_timeout(0.005, self.on_cleanup_timer)
+        channel.connection._adapter_call_later(0.005, self.on_cleanup_timer)
 
     def on_cleanup_timer(self):
         self.stop()
@@ -1112,8 +1112,8 @@ class TestViabilityOfMultipleTimeoutsWithSameDeadlineAndCallback(AsyncTestCase,
     DESCRIPTION = "Test viability of multiple timeouts with same deadline and callback"
 
     def begin(self, channel):
-        timer1 = channel.connection._adapter_add_timeout(0, self.on_my_timer)
-        timer2 = channel.connection._adapter_add_timeout(0, self.on_my_timer)
+        timer1 = channel.connection._adapter_call_later(0, self.on_my_timer)
+        timer2 = channel.connection._adapter_call_later(0, self.on_my_timer)
 
         self.assertIsNot(timer1, timer2)
 
diff --git a/tests/acceptance/async_test_base.py b/tests/acceptance/async_test_base.py
index 8d9919d..0eff7de 100644
--- a/tests/acceptance/async_test_base.py
+++ b/tests/acceptance/async_test_base.py
@@ -164,8 +164,8 @@ class AsyncTestCase(unittest.TestCase):
                                        self.on_closed,
                                        custom_ioloop=ioloop_factory())
         try:
-            self.timeout = self.connection._adapter_add_timeout(self.TIMEOUT,
-                                                                self.on_timeout)
+            self.timeout = self.connection._adapter_call_later(self.TIMEOUT,
+                                                               self.on_timeout)
             self._run_ioloop()
 
             self.assertFalse(self._timed_out)
diff --git a/tests/acceptance/blocking_adapter_test.py b/tests/acceptance/blocking_adapter_test.py
index 20607bd..22b63d2 100644
--- a/tests/acceptance/blocking_adapter_test.py
+++ b/tests/acceptance/blocking_adapter_test.py
@@ -75,7 +75,7 @@ class BlockingTestCaseBase(unittest.TestCase):
 
         # We use impl's timer directly in order to get a callback regardless
         # of BlockingConnection's event dispatch modality
-        connection._impl._adapter_add_timeout(self.TIMEOUT, # pylint: disable=E1101
+        connection._impl._adapter_call_later(self.TIMEOUT, # pylint: disable=E1101
                                               self._on_test_timeout)
 
         # Patch calls into I/O loop to fail test if exceptions are
@@ -651,13 +651,13 @@ class TestAddCallbackThreadsafeOnClosedConnectionRaisesWrongState(
 class TestAddTimeoutRemoveTimeout(BlockingTestCaseBase):
 
     def test(self):
-        """BlockingConnection.add_timeout and remove_timeout"""
+        """BlockingConnection.call_later and remove_timeout"""
         connection = self._connect()
 
         # Test timer completion
         start_time = time.time()
         rx_callback = []
-        timer_id = connection.add_timeout(
+        timer_id = connection.call_later(
             0.005,
             lambda: rx_callback.append(time.time()))
         while not rx_callback:
@@ -673,7 +673,7 @@ class TestAddTimeoutRemoveTimeout(BlockingTestCaseBase):
 
         # Test aborted timer
         rx_callback = []
-        timer_id = connection.add_timeout(
+        timer_id = connection.call_later(
             0.001,
             lambda: rx_callback.append(time.time()))
         connection.remove_timeout(timer_id)
@@ -696,8 +696,8 @@ class TestViabilityOfMultipleTimeoutsWithSameDeadlineAndCallback(BlockingTestCas
         def callback():
             rx_callback.append(1)
 
-        timer1 = connection.add_timeout(0, callback)
-        timer2 = connection.add_timeout(0, callback)
+        timer1 = connection.call_later(0, callback)
+        timer2 = connection.call_later(0, callback)
 
         self.assertIsNot(timer1, timer2)
 
@@ -718,7 +718,7 @@ class TestRemoveTimeoutFromTimeoutCallback(BlockingTestCaseBase):
         connection = self._connect()
 
         # Test timer completion
-        timer_id1 = connection.add_timeout(5, lambda: 0/0)
+        timer_id1 = connection.call_later(5, lambda: 0/0)
 
         rx_timer2 = []
         def on_timer2():
@@ -726,7 +726,7 @@ class TestRemoveTimeoutFromTimeoutCallback(BlockingTestCaseBase):
             connection.remove_timeout(timer_id2)
             rx_timer2.append(1)
 
-        timer_id2 = connection.add_timeout(0, on_timer2)
+        timer_id2 = connection.call_later(0, on_timer2)
 
         while not rx_timer2:
             connection.process_data_events(time_limit=None)
diff --git a/tests/acceptance/twisted_adapter_tests.py b/tests/acceptance/twisted_adapter_tests.py
index 3572e33..5651a19 100644
--- a/tests/acceptance/twisted_adapter_tests.py
+++ b/tests/acceptance/twisted_adapter_tests.py
@@ -800,7 +800,7 @@ class TwistedConnectionAdapterTestCase(TestCase):
     def test_timeout(self):
         # Verify that timeouts are registered and cancelled properly.
         callback = mock.Mock()
-        timer_id = self.conn._adapter_add_timeout(5, callback)
+        timer_id = self.conn._adapter_call_later(5, callback)
         self.assertEqual(len(reactor.getDelayedCalls()), 1)
         self.conn._adapter_remove_timeout(timer_id)
         self.assertEqual(len(reactor.getDelayedCalls()), 0)
diff --git a/tests/unit/channel_tests.py b/tests/unit/channel_tests.py
index aea2f17..53cc5da 100644
--- a/tests/unit/channel_tests.py
+++ b/tests/unit/channel_tests.py
@@ -30,7 +30,7 @@ class ConnectionTemplate(connection.Connection):
     _adapter_connect_stream = connection.Connection._adapter_connect_stream
     _adapter_disconnect_stream = connection.Connection._adapter_disconnect_stream
     _adapter_emit_data = connection.Connection._adapter_emit_data
-    _adapter_add_timeout = connection.Connection._adapter_add_timeout
+    _adapter_call_later = connection.Connection._adapter_call_later
     _adapter_remove_timeout = connection.Connection._adapter_remove_timeout
     _adapter_add_callback_threadsafe = (
         connection.Connection._adapter_add_callback_threadsafe)
diff --git a/tests/unit/connection_tests.py b/tests/unit/connection_tests.py
index 13a0ba0..74e70d0 100644
--- a/tests/unit/connection_tests.py
+++ b/tests/unit/connection_tests.py
@@ -44,7 +44,7 @@ class ConstructibleConnection(connection.Connection):
     def _adapter_disconnect_stream(self):
         raise NotImplementedError
 
-    def _adapter_add_timeout(self, deadline, callback):
+    def _adapter_call_later(self, delay, callback):
         raise NotImplementedError
 
     def _adapter_remove_timeout(self, timeout_id):
@@ -731,13 +731,13 @@ class ConnectionTests(unittest.TestCase):  # pylint: disable=R0904
         conn.add_on_connection_unblocked_callback.assert_called_once_with(
             conn._on_connection_unblocked)
 
-    @mock.patch.object(ConstructibleConnection, '_adapter_add_timeout')
+    @mock.patch.object(ConstructibleConnection, '_adapter_call_later')
     @mock.patch.object(
         connection.Connection,
         '_adapter_connect_stream',
         spec_set=connection.Connection._adapter_connect_stream)
     def test_connection_blocked_sets_timer(self, connect_mock,
-                                           add_timeout_mock):
+                                           call_later_mock):
         with mock.patch.object(ConstructibleConnection,
                                '_adapter_connect_stream'):
             conn = ConstructibleConnection(
@@ -749,18 +749,18 @@ class ConnectionTests(unittest.TestCase):  # pylint: disable=R0904
             mock.Mock(name='frame.Method(Connection.Blocked)'))
 
         # Check
-        conn._adapter_add_timeout.assert_called_once_with(
+        conn._adapter_call_later.assert_called_once_with(
             60, conn._on_blocked_connection_timeout)
 
         self.assertIsNotNone(conn._blocked_conn_timer)
 
-    @mock.patch.object(ConstructibleConnection, '_adapter_add_timeout')
+    @mock.patch.object(ConstructibleConnection, '_adapter_call_later')
     @mock.patch.object(
         connection.Connection,
         '_adapter_connect_stream',
         spec_set=connection.Connection._adapter_connect_stream)
     def test_blocked_connection_multiple_blocked_in_a_row_sets_timer_once(
-            self, connect_mock, add_timeout_mock):
+            self, connect_mock, call_later_mock):
 
         with mock.patch.object(ConstructibleConnection,
                                '_adapter_connect_stream'):
@@ -774,7 +774,7 @@ class ConnectionTests(unittest.TestCase):  # pylint: disable=R0904
             mock.Mock(name='frame.Method(Connection.Blocked)'))
 
         # Check
-        conn._adapter_add_timeout.assert_called_once_with(
+        conn._adapter_call_later.assert_called_once_with(
             60, conn._on_blocked_connection_timeout)
 
         self.assertIsNotNone(conn._blocked_conn_timer)
@@ -786,20 +786,20 @@ class ConnectionTests(unittest.TestCase):  # pylint: disable=R0904
             conn,
             mock.Mock(name='frame.Method(Connection.Blocked)'))
 
-        self.assertEqual(conn._adapter_add_timeout.call_count, 1)
+        self.assertEqual(conn._adapter_call_later.call_count, 1)
         self.assertIs(conn._blocked_conn_timer, timer)
 
     @mock.patch.object(connection.Connection, '_on_stream_terminated')
     @mock.patch.object(
         ConstructibleConnection,
-        '_adapter_add_timeout',
-        spec_set=connection.Connection._adapter_add_timeout)
+        '_adapter_call_later',
+        spec_set=connection.Connection._adapter_call_later)
     @mock.patch.object(
         connection.Connection,
         '_adapter_connect_stream',
         spec_set=connection.Connection._adapter_connect_stream)
     def test_blocked_connection_timeout_terminates_connection(
-            self, connect_mock, add_timeout_mock, on_terminate_mock):
+            self, connect_mock, call_later_mock, on_terminate_mock):
 
         with mock.patch.multiple(ConstructibleConnection,
                                  _adapter_connect_stream=mock.Mock(),
@@ -827,14 +827,14 @@ class ConnectionTests(unittest.TestCase):  # pylint: disable=R0904
     @mock.patch.object(ConstructibleConnection, '_adapter_remove_timeout')
     @mock.patch.object(
         ConstructibleConnection,
-        '_adapter_add_timeout',
-        spec_set=connection.Connection._adapter_add_timeout)
+        '_adapter_call_later',
+        spec_set=connection.Connection._adapter_call_later)
     @mock.patch.object(
         connection.Connection,
         '_adapter_connect_stream',
         spec_set=connection.Connection._adapter_connect_stream)
     def test_blocked_connection_unblocked_removes_timer(
-            self, connect_mock, add_timeout_mock, remove_timeout_mock):
+            self, connect_mock, call_later_mock, remove_timeout_mock):
 
         with mock.patch.object(ConstructibleConnection,
                                '_adapter_connect_stream'):
@@ -861,14 +861,14 @@ class ConnectionTests(unittest.TestCase):  # pylint: disable=R0904
     @mock.patch.object(ConstructibleConnection, '_adapter_remove_timeout')
     @mock.patch.object(
         ConstructibleConnection,
-        '_adapter_add_timeout',
-        spec_set=connection.Connection._adapter_add_timeout)
+        '_adapter_call_later',
+        spec_set=connection.Connection._adapter_call_later)
     @mock.patch.object(
         connection.Connection,
         '_adapter_connect_stream',
         spec_set=connection.Connection._adapter_connect_stream)
     def test_blocked_connection_multiple_unblocked_in_a_row_removes_timer_once(
-            self, connect_mock, add_timeout_mock, remove_timeout_mock):
+            self, connect_mock, call_later_mock, remove_timeout_mock):
 
         with mock.patch.object(ConstructibleConnection,
                                '_adapter_connect_stream'):
@@ -905,8 +905,8 @@ class ConnectionTests(unittest.TestCase):  # pylint: disable=R0904
     @mock.patch.object(ConstructibleConnection, '_adapter_remove_timeout')
     @mock.patch.object(
         ConstructibleConnection,
-        '_adapter_add_timeout',
-        spec_set=connection.Connection._adapter_add_timeout)
+        '_adapter_call_later',
+        spec_set=connection.Connection._adapter_call_later)
     @mock.patch.object(
         connection.Connection,
         '_adapter_connect_stream',
@@ -916,7 +916,7 @@ class ConnectionTests(unittest.TestCase):  # pylint: disable=R0904
         '_adapter_disconnect_stream',
         spec_set=connection.Connection._adapter_disconnect_stream)
     def test_blocked_connection_on_stream_terminated_removes_timer(
-            self, adapter_disconnect_mock, connect_mock, add_timeout_mock,
+            self, adapter_disconnect_mock, connect_mock, call_later_mock,
             remove_timeout_mock):
 
         with mock.patch.object(ConstructibleConnection,
diff --git a/tests/unit/heartbeat_tests.py b/tests/unit/heartbeat_tests.py
index 9665eab..a708acc 100644
--- a/tests/unit/heartbeat_tests.py
+++ b/tests/unit/heartbeat_tests.py
@@ -31,7 +31,7 @@ class ConstructableConnection(connection.Connection):
     def _adapter_disconnect_stream(self):
         raise NotImplementedError
 
-    def add_timeout(self, deadline, callback):
+    def call_later(self, delay, callback):
         raise NotImplementedError
 
     def remove_timeout(self, timeout_id):
@@ -43,7 +43,7 @@ class ConstructableConnection(connection.Connection):
     def _adapter_add_callback_threadsafe(self, callback):
         raise NotImplementedError
 
-    def _adapter_add_timeout(self, deadline, callback):
+    def _adapter_call_later(self, deadline, callback):
         raise NotImplementedError
 
     def _adapter_remove_timeout(self, timeout_id):
@@ -213,7 +213,7 @@ class HeartbeatTests(unittest.TestCase):
     def test_start_send_timer_called(self):
         want = [mock.call(self.SEND_INTERVAL, self.obj._send_heartbeat),
                 mock.call(self.CHECK_INTERVAL, self.obj._check_heartbeat)]
-        got = self.mock_conn._adapter_add_timeout.call_args_list
+        got = self.mock_conn._adapter_call_later.call_args_list
         self.assertEqual(got, want)
 
     def test_update_counters_bytes_received(self):

pip install -e .[tornado,twisted]
parse_log_pytest
requirements.txt
nose pytest
apt-get update apt-get install -y gcc
3.7
test-requirements.txt
pytest --no-header -rA --tb=line --color=no -p no:cacheprovider -W ignore::DeprecationWarning
attrs==24.2.0
Automat==22.10.0
certifi @ file:///croot/certifi_1671487769961/work/certifi
charset-normalizer==3.4.1
codecov==2.1.13
constantly==15.1.0
coverage==7.2.7
exceptiongroup==1.2.2
hyperlink==21.0.0
idna==3.10
importlib-metadata==6.7.0
incremental==22.10.0
iniconfig==2.0.0
mock==5.2.0
nose==1.3.7
packaging==24.0
-e git+https://github.com/pika/pika.git@9a0468da772df960ce566aaa951eabb9a9aeccfd#egg=pika
pluggy==1.2.0
pytest==7.4.4
requests==2.31.0
six==1.17.0
tomli==2.0.1
tornado==6.2
Twisted==23.8.0
typing_extensions==4.7.1
urllib3==2.0.7
zipp==3.15.0
zope.interface==6.4.post2

name: pika
channels:
  - defaults
  - https://repo.anaconda.com/pkgs/main
  - https://repo.anaconda.com/pkgs/r
  - conda-forge
dependencies:
  - _libgcc_mutex=0.1=main
  - _openmp_mutex=5.1=1_gnu
  - ca-certificates=2025.2.25=h06a4308_0
  - certifi=2022.12.7=py37h06a4308_0
  - ld_impl_linux-64=2.40=h12ee557_0
  - libffi=3.4.4=h6a678d5_1
  - libgcc-ng=11.2.0=h1234567_1
  - libgomp=11.2.0=h1234567_1
  - libstdcxx-ng=11.2.0=h1234567_1
  - ncurses=6.4=h6a678d5_0
  - openssl=1.1.1w=h7f8727e_0
  - pip=22.3.1=py37h06a4308_0
  - python=3.7.16=h7a1cb2a_0
  - readline=8.2=h5eee18b_0
  - setuptools=65.6.3=py37h06a4308_0
  - sqlite=3.45.3=h5eee18b_0
  - tk=8.6.14=h39e8969_0
  - wheel=0.38.4=py37h06a4308_0
  - xz=5.6.4=h5eee18b_1
  - zlib=1.2.13=h5eee18b_1
  - pip:
      - attrs==24.2.0
      - automat==22.10.0
      - charset-normalizer==3.4.1
      - codecov==2.1.13
      - constantly==15.1.0
      - coverage==7.2.7
      - exceptiongroup==1.2.2
      - hyperlink==21.0.0
      - idna==3.10
      - importlib-metadata==6.7.0
      - incremental==22.10.0
      - iniconfig==2.0.0
      - mock==5.2.0
      - nose==1.3.7
      - packaging==24.0
      - pluggy==1.2.0
      - pytest==7.4.4
      - requests==2.31.0
      - six==1.17.0
      - tomli==2.0.1
      - tornado==6.2
      - twisted==23.8.0
      - typing-extensions==4.7.1
      - urllib3==2.0.7
      - zipp==3.15.0
      - zope-interface==6.4.post2
prefix: /opt/conda/envs/pika

tests/acceptance/blocking_adapter_test.py::TestCreateConnectionFromTwoUnreachableConfigs::test tests/acceptance/blocking_adapter_test.py::TestConnectWithDownedBroker::test tests/acceptance/blocking_adapter_test.py::TestDisconnectDuringConnectionProtocol::test tests/acceptance/twisted_adapter_tests.py::ClosableDeferredQueueTestCase::test_close tests/acceptance/twisted_adapter_tests.py::ClosableDeferredQueueTestCase::test_close_twice tests/acceptance/twisted_adapter_tests.py::ClosableDeferredQueueTestCase::test_close_waiting tests/acceptance/twisted_adapter_tests.py::ClosableDeferredQueueTestCase::test_get_closed tests/acceptance/twisted_adapter_tests.py::ClosableDeferredQueueTestCase::test_put_closed tests/acceptance/twisted_adapter_tests.py::TwistedChannelTestCase::test_add_on_return_callback tests/acceptance/twisted_adapter_tests.py::TwistedChannelTestCase::test_basic_cancel tests/acceptance/twisted_adapter_tests.py::TwistedChannelTestCase::test_basic_cancel_no_consumer tests/acceptance/twisted_adapter_tests.py::TwistedChannelTestCase::test_basic_consume tests/acceptance/twisted_adapter_tests.py::TwistedChannelTestCase::test_basic_consume_failure tests/acceptance/twisted_adapter_tests.py::TwistedChannelTestCase::test_basic_consume_while_closed tests/acceptance/twisted_adapter_tests.py::TwistedChannelTestCase::test_basic_get tests/acceptance/twisted_adapter_tests.py::TwistedChannelTestCase::test_basic_get_empty tests/acceptance/twisted_adapter_tests.py::TwistedChannelTestCase::test_basic_get_twice tests/acceptance/twisted_adapter_tests.py::TwistedChannelTestCase::test_basic_nack tests/acceptance/twisted_adapter_tests.py::TwistedChannelTestCase::test_basic_publish tests/acceptance/twisted_adapter_tests.py::TwistedChannelTestCase::test_basic_publish_closed tests/acceptance/twisted_adapter_tests.py::TwistedChannelTestCase::test_basic_qos tests/acceptance/twisted_adapter_tests.py::TwistedChannelTestCase::test_basic_recover tests/acceptance/twisted_adapter_tests.py::TwistedChannelTestCase::test_basic_reject tests/acceptance/twisted_adapter_tests.py::TwistedChannelTestCase::test_callback_deferred tests/acceptance/twisted_adapter_tests.py::TwistedChannelTestCase::test_close tests/acceptance/twisted_adapter_tests.py::TwistedChannelTestCase::test_confirm_delivery tests/acceptance/twisted_adapter_tests.py::TwistedChannelTestCase::test_confirm_delivery_multiple tests/acceptance/twisted_adapter_tests.py::TwistedChannelTestCase::test_confirm_delivery_nacked tests/acceptance/twisted_adapter_tests.py::TwistedChannelTestCase::test_confirm_delivery_returned tests/acceptance/twisted_adapter_tests.py::TwistedChannelTestCase::test_confirm_delivery_returned_nacked tests/acceptance/twisted_adapter_tests.py::TwistedChannelTestCase::test_consumer_cancelled_by_broker tests/acceptance/twisted_adapter_tests.py::TwistedChannelTestCase::test_method_not_wrapped tests/acceptance/twisted_adapter_tests.py::TwistedChannelTestCase::test_on_close tests/acceptance/twisted_adapter_tests.py::TwistedChannelTestCase::test_passthrough tests/acceptance/twisted_adapter_tests.py::TwistedChannelTestCase::test_queue_delete tests/acceptance/twisted_adapter_tests.py::TwistedChannelTestCase::test_repr tests/acceptance/twisted_adapter_tests.py::TwistedChannelTestCase::test_wrapped_method tests/acceptance/twisted_adapter_tests.py::TwistedChannelTestCase::test_wrapped_method_failure tests/acceptance/twisted_adapter_tests.py::TwistedChannelTestCase::test_wrapped_method_multiple_args tests/acceptance/twisted_adapter_tests.py::TwistedChannelTestCase::test_wrapped_method_while_closed tests/acceptance/twisted_adapter_tests.py::TwistedProtocolConnectionTestCase::test_channel tests/acceptance/twisted_adapter_tests.py::TwistedProtocolConnectionTestCase::test_close tests/acceptance/twisted_adapter_tests.py::TwistedProtocolConnectionTestCase::test_close_twice tests/acceptance/twisted_adapter_tests.py::TwistedProtocolConnectionTestCase::test_connection tests/acceptance/twisted_adapter_tests.py::TwistedProtocolConnectionTestCase::test_connectionLost tests/acceptance/twisted_adapter_tests.py::TwistedProtocolConnectionTestCase::test_connectionLost_twice tests/acceptance/twisted_adapter_tests.py::TwistedProtocolConnectionTestCase::test_dataReceived tests/acceptance/twisted_adapter_tests.py::TwistedProtocolConnectionTestCase::test_on_connection_closed tests/acceptance/twisted_adapter_tests.py::TwistedProtocolConnectionTestCase::test_on_connection_closed_Failure tests/acceptance/twisted_adapter_tests.py::TwistedProtocolConnectionTestCase::test_on_connection_closed_twice tests/acceptance/twisted_adapter_tests.py::TwistedProtocolConnectionTestCase::test_on_connection_failed tests/acceptance/twisted_adapter_tests.py::TwistedProtocolConnectionTestCase::test_on_connection_failed_twice tests/acceptance/twisted_adapter_tests.py::TwistedProtocolConnectionTestCase::test_on_connection_ready tests/acceptance/twisted_adapter_tests.py::TwistedProtocolConnectionTestCase::test_on_connection_ready_method tests/acceptance/twisted_adapter_tests.py::TwistedProtocolConnectionTestCase::test_on_connection_ready_twice tests/acceptance/twisted_adapter_tests.py::TwistedConnectionAdapterTestCase::test_adapter_disconnect_stream tests/acceptance/twisted_adapter_tests.py::TwistedConnectionAdapterTestCase::test_adapter_emit_data tests/acceptance/twisted_adapter_tests.py::TwistedConnectionAdapterTestCase::test_call_threadsafe tests/acceptance/twisted_adapter_tests.py::TwistedConnectionAdapterTestCase::test_connection_lost tests/acceptance/twisted_adapter_tests.py::TwistedConnectionAdapterTestCase::test_connection_lost_connectiondone tests/acceptance/twisted_adapter_tests.py::TwistedConnectionAdapterTestCase::test_connection_made tests/acceptance/twisted_adapter_tests.py::TwistedConnectionAdapterTestCase::test_data_received tests/acceptance/twisted_adapter_tests.py::TwistedConnectionAdapterTestCase::test_timeout tests/acceptance/twisted_adapter_tests.py::TimerHandleTestCase::test_cancel tests/acceptance/twisted_adapter_tests.py::TimerHandleTestCase::test_cancel_already_called tests/acceptance/twisted_adapter_tests.py::TimerHandleTestCase::test_cancel_already_cancelled tests/acceptance/twisted_adapter_tests.py::TimerHandleTestCase::test_cancel_twice tests/unit/channel_tests.py::ChannelTests::test_add_callback tests/unit/channel_tests.py::ChannelTests::test_add_callback_multiple_replies tests/unit/channel_tests.py::ChannelTests::test_add_callbacks_basic_cancel_empty_added tests/unit/channel_tests.py::ChannelTests::test_add_callbacks_basic_get_empty_added tests/unit/channel_tests.py::ChannelTests::test_add_callbacks_channel_close_added tests/unit/channel_tests.py::ChannelTests::test_add_callbacks_channel_flow_added tests/unit/channel_tests.py::ChannelTests::test_add_on_cancel_callback tests/unit/channel_tests.py::ChannelTests::test_add_on_close_callback tests/unit/channel_tests.py::ChannelTests::test_add_on_flow_callback tests/unit/channel_tests.py::ChannelTests::test_add_on_return_callback tests/unit/channel_tests.py::ChannelTests::test_basic_ack_calls_send_method tests/unit/channel_tests.py::ChannelTests::test_basic_ack_channel_closed tests/unit/channel_tests.py::ChannelTests::test_basic_cancel_asynch tests/unit/channel_tests.py::ChannelTests::test_basic_cancel_asynch_with_user_callback_raises_value_error tests/unit/channel_tests.py::ChannelTests::test_basic_cancel_calls_raise_if_not_open tests/unit/channel_tests.py::ChannelTests::test_basic_cancel_legacy_parameter tests/unit/channel_tests.py::ChannelTests::test_basic_cancel_synch tests/unit/channel_tests.py::ChannelTests::test_basic_cancel_synch_no_user_callback_raises_value_error tests/unit/channel_tests.py::ChannelTests::test_basic_cancel_then_close tests/unit/channel_tests.py::ChannelTests::test_basic_cancel_unknown_consumer_tag tests/unit/channel_tests.py::ChannelTests::test_basic_consume_calls_raise_if_not_open tests/unit/channel_tests.py::ChannelTests::test_basic_consume_channel_closed tests/unit/channel_tests.py::ChannelTests::test_basic_consume_consumer_tag_cancelled_full tests/unit/channel_tests.py::ChannelTests::test_basic_consume_consumer_tag_in_consumers tests/unit/channel_tests.py::ChannelTests::test_basic_consume_consumer_tag_no_completion_callback tests/unit/channel_tests.py::ChannelTests::test_basic_consume_consumer_tag_with_completion_callback tests/unit/channel_tests.py::ChannelTests::test_basic_consume_consumers_callback_value tests/unit/channel_tests.py::ChannelTests::test_basic_consume_consumers_rpc_with_completion_callback tests/unit/channel_tests.py::ChannelTests::test_basic_consume_consumers_rpc_with_no_completion_callback tests/unit/channel_tests.py::ChannelTests::test_basic_consume_duplicate_consumer_tag_raises tests/unit/channel_tests.py::ChannelTests::test_basic_consume_legacy_parameter_callback tests/unit/channel_tests.py::ChannelTests::test_basic_consume_legacy_parameter_queue tests/unit/channel_tests.py::ChannelTests::test_basic_get_callback tests/unit/channel_tests.py::ChannelTests::test_basic_get_legacy_parameter tests/unit/channel_tests.py::ChannelTests::test_basic_get_requires_callback tests/unit/channel_tests.py::ChannelTests::test_basic_get_send_method_called tests/unit/channel_tests.py::ChannelTests::test_basic_get_send_method_called_auto_ack tests/unit/channel_tests.py::ChannelTests::test_basic_nack_raises_channel_wrong_state tests/unit/channel_tests.py::ChannelTests::test_basic_nack_send_method_request tests/unit/channel_tests.py::ChannelTests::test_basic_publish_raises_channel_wrong_state tests/unit/channel_tests.py::ChannelTests::test_basic_publish_send_method_request tests/unit/channel_tests.py::ChannelTests::test_basic_qos_invalid_prefetch_count_raises_error tests/unit/channel_tests.py::ChannelTests::test_basic_qos_invalid_prefetch_size_raises_error tests/unit/channel_tests.py::ChannelTests::test_basic_qos_legacy_parameter tests/unit/channel_tests.py::ChannelTests::test_basic_qos_raises_channel_wrong_state tests/unit/channel_tests.py::ChannelTests::test_basic_qos_rpc_request tests/unit/channel_tests.py::ChannelTests::test_basic_recover_legacy_parameter tests/unit/channel_tests.py::ChannelTests::test_basic_recover_raises_channel_wrong_state tests/unit/channel_tests.py::ChannelTests::test_basic_recover_rpc_request tests/unit/channel_tests.py::ChannelTests::test_basic_reject_raises_channel_wrong_state tests/unit/channel_tests.py::ChannelTests::test_basic_reject_send_method_request_with_int_tag tests/unit/channel_tests.py::ChannelTests::test_basic_reject_send_method_request_with_long_tag tests/unit/channel_tests.py::ChannelTests::test_basic_reject_spec_with_int_tag tests/unit/channel_tests.py::ChannelTests::test_basic_reject_spec_with_long_tag tests/unit/channel_tests.py::ChannelTests::test_channel_open_add_callbacks_called tests/unit/channel_tests.py::ChannelTests::test_cleanup tests/unit/channel_tests.py::ChannelTests::test_close_basic_cancel_called tests/unit/channel_tests.py::ChannelTests::test_close_in_closed_state_raises_channel_wrong_state_and_stays_closed tests/unit/channel_tests.py::ChannelTests::test_close_in_closing_state_raises_channel_wrong_state tests/unit/channel_tests.py::ChannelTests::test_close_in_open_state_transitions_to_closing tests/unit/channel_tests.py::ChannelTests::test_close_in_opening_state tests/unit/channel_tests.py::ChannelTests::test_confirm_delivery_async tests/unit/channel_tests.py::ChannelTests::test_confirm_delivery_callback_basic_ack tests/unit/channel_tests.py::ChannelTests::test_confirm_delivery_callback_basic_nack tests/unit/channel_tests.py::ChannelTests::test_confirm_delivery_callback_without_nowait_selectok tests/unit/channel_tests.py::ChannelTests::test_confirm_delivery_callback_yes_basic_ack_callback tests/unit/channel_tests.py::ChannelTests::test_confirm_delivery_callback_yes_basic_nack_callback tests/unit/channel_tests.py::ChannelTests::test_confirm_delivery_legacy_no_parameters tests/unit/channel_tests.py::ChannelTests::test_confirm_delivery_legacy_nowait_parameter tests/unit/channel_tests.py::ChannelTests::test_confirm_delivery_no_callback_callback_call_count tests/unit/channel_tests.py::ChannelTests::test_confirm_delivery_raises_channel_wrong_state tests/unit/channel_tests.py::ChannelTests::test_confirm_delivery_raises_method_not_implemented_for_confirms tests/unit/channel_tests.py::ChannelTests::test_confirm_delivery_raises_method_not_implemented_for_nack tests/unit/channel_tests.py::ChannelTests::test_confirm_delivery_with_bad_callback_raises_value_error tests/unit/channel_tests.py::ChannelTests::test_consumer_tags tests/unit/channel_tests.py::ChannelTests::test_exchange_bind_legacy_parameter tests/unit/channel_tests.py::ChannelTests::test_exchange_bind_raises_channel_wrong_state tests/unit/channel_tests.py::ChannelTests::test_exchange_bind_raises_value_error_on_invalid_callback tests/unit/channel_tests.py::ChannelTests::test_exchange_bind_rpc_request tests/unit/channel_tests.py::ChannelTests::test_exchange_bind_rpc_request_nowait tests/unit/channel_tests.py::ChannelTests::test_exchange_declare_legacy_parameter_callback tests/unit/channel_tests.py::ChannelTests::test_exchange_declare_raises_channel_wrong_state tests/unit/channel_tests.py::ChannelTests::test_exchange_declare_raises_value_error_on_invalid_callback tests/unit/channel_tests.py::ChannelTests::test_exchange_declare_rpc_request tests/unit/channel_tests.py::ChannelTests::test_exchange_declare_rpc_request_nowait tests/unit/channel_tests.py::ChannelTests::test_exchange_delete_legacy_parameter tests/unit/channel_tests.py::ChannelTests::test_exchange_delete_raises_channel_wrong_state tests/unit/channel_tests.py::ChannelTests::test_exchange_delete_raises_value_error_on_invalid_callback tests/unit/channel_tests.py::ChannelTests::test_exchange_delete_rpc_request tests/unit/channel_tests.py::ChannelTests::test_exchange_delete_rpc_request_nowait tests/unit/channel_tests.py::ChannelTests::test_exchange_unbind_legacy_parameter tests/unit/channel_tests.py::ChannelTests::test_exchange_unbind_raises_channel_wrong_state tests/unit/channel_tests.py::ChannelTests::test_exchange_unbind_raises_value_error_on_invalid_callback tests/unit/channel_tests.py::ChannelTests::test_exchange_unbind_rpc_request tests/unit/channel_tests.py::ChannelTests::test_exchange_unbind_rpc_request_nowait tests/unit/channel_tests.py::ChannelTests::test_flow_legacy_parameter tests/unit/channel_tests.py::ChannelTests::test_flow_off_rpc_request tests/unit/channel_tests.py::ChannelTests::test_flow_on_flowok_callback tests/unit/channel_tests.py::ChannelTests::test_flow_on_rpc_request tests/unit/channel_tests.py::ChannelTests::test_flow_raises_channel_wrong_state tests/unit/channel_tests.py::ChannelTests::test_flow_raises_invalid_callback tests/unit/channel_tests.py::ChannelTests::test_handle_content_frame_basic_deliver_called tests/unit/channel_tests.py::ChannelTests::test_handle_content_frame_basic_get_called tests/unit/channel_tests.py::ChannelTests::test_handle_content_frame_basic_return_called tests/unit/channel_tests.py::ChannelTests::test_handle_content_frame_method_returns_none tests/unit/channel_tests.py::ChannelTests::test_handle_content_frame_sets_header_frame tests/unit/channel_tests.py::ChannelTests::test_handle_content_frame_sets_method_frame tests/unit/channel_tests.py::ChannelTests::test_has_content_false tests/unit/channel_tests.py::ChannelTests::test_has_content_true tests/unit/channel_tests.py::ChannelTests::test_init_blocked tests/unit/channel_tests.py::ChannelTests::test_init_blocking tests/unit/channel_tests.py::ChannelTests::test_init_callbacks tests/unit/channel_tests.py::ChannelTests::test_init_cancelled tests/unit/channel_tests.py::ChannelTests::test_init_channel_number tests/unit/channel_tests.py::ChannelTests::test_init_connection tests/unit/channel_tests.py::ChannelTests::test_init_consumers tests/unit/channel_tests.py::ChannelTests::test_init_content_frame_assembler tests/unit/channel_tests.py::ChannelTests::test_init_flow tests/unit/channel_tests.py::ChannelTests::test_init_has_on_flow_callback tests/unit/channel_tests.py::ChannelTests::test_init_invalid_channel_number tests/unit/channel_tests.py::ChannelTests::test_init_on_flowok_callback tests/unit/channel_tests.py::ChannelTests::test_init_on_getok_callback tests/unit/channel_tests.py::ChannelTests::test_init_on_openok_callback tests/unit/channel_tests.py::ChannelTests::test_init_state tests/unit/channel_tests.py::ChannelTests::test_is_closed_false tests/unit/channel_tests.py::ChannelTests::test_is_closed_true tests/unit/channel_tests.py::ChannelTests::test_is_closing_false tests/unit/channel_tests.py::ChannelTests::test_is_closing_true tests/unit/channel_tests.py::ChannelTests::test_no_side_effects_from_send_method_error tests/unit/channel_tests.py::ChannelTests::test_on_cancel_not_appended_cancelled tests/unit/channel_tests.py::ChannelTests::test_on_cancel_removed_consumer tests/unit/channel_tests.py::ChannelTests::test_on_cancelok_removed_consumer tests/unit/channel_tests.py::ChannelTests::test_on_close_from_broker_in_closing_state tests/unit/channel_tests.py::ChannelTests::test_on_close_from_broker_in_open_state tests/unit/channel_tests.py::ChannelTests::test_on_close_from_broker_warning tests/unit/channel_tests.py::ChannelTests::test_on_close_meta_in_closed_state_is_suppressed tests/unit/channel_tests.py::ChannelTests::test_on_close_meta_in_closing_state_transitions_to_closed tests/unit/channel_tests.py::ChannelTests::test_on_close_meta_in_open_state_transitions_to_closed tests/unit/channel_tests.py::ChannelTests::test_on_close_meta_in_opening_state_transitions_to_closed tests/unit/channel_tests.py::ChannelTests::test_on_closeok tests/unit/channel_tests.py::ChannelTests::test_on_closeok_following_close_from_broker tests/unit/channel_tests.py::ChannelTests::test_on_confirm_selectok tests/unit/channel_tests.py::ChannelTests::test_on_deliver_callback_called tests/unit/channel_tests.py::ChannelTests::test_on_eventok tests/unit/channel_tests.py::ChannelTests::test_on_flow tests/unit/channel_tests.py::ChannelTests::test_on_flow_with_callback tests/unit/channel_tests.py::ChannelTests::test_on_flowok tests/unit/channel_tests.py::ChannelTests::test_on_flowok_callback_reset tests/unit/channel_tests.py::ChannelTests::test_on_flowok_calls_callback tests/unit/channel_tests.py::ChannelTests::test_on_getempty tests/unit/channel_tests.py::ChannelTests::test_on_getok_callback_called tests/unit/channel_tests.py::ChannelTests::test_on_getok_callback_reset tests/unit/channel_tests.py::ChannelTests::test_on_getok_no_callback tests/unit/channel_tests.py::ChannelTests::test_on_openok_callback_called tests/unit/channel_tests.py::ChannelTests::test_on_openok_no_callback tests/unit/channel_tests.py::ChannelTests::test_on_synchronous_complete tests/unit/channel_tests.py::ChannelTests::test_onreturn tests/unit/channel_tests.py::ChannelTests::test_onreturn_warning tests/unit/channel_tests.py::ChannelTests::test_queue_bind_legacy_parameter_callback tests/unit/channel_tests.py::ChannelTests::test_queue_bind_raises_channel_wrong_state tests/unit/channel_tests.py::ChannelTests::test_queue_bind_raises_value_error_on_invalid_callback tests/unit/channel_tests.py::ChannelTests::test_queue_bind_rpc_request tests/unit/channel_tests.py::ChannelTests::test_queue_bind_rpc_request_nowait tests/unit/channel_tests.py::ChannelTests::test_queue_declare_legacy_parameter_callback tests/unit/channel_tests.py::ChannelTests::test_queue_declare_raises_channel_wrong_state tests/unit/channel_tests.py::ChannelTests::test_queue_declare_raises_value_error_on_invalid_callback tests/unit/channel_tests.py::ChannelTests::test_queue_declare_rpc_request tests/unit/channel_tests.py::ChannelTests::test_queue_declare_rpc_request_nowait tests/unit/channel_tests.py::ChannelTests::test_queue_delete_legacy_parameter tests/unit/channel_tests.py::ChannelTests::test_queue_delete_raises_channel_wrong_state tests/unit/channel_tests.py::ChannelTests::test_queue_delete_raises_value_error_on_invalid_callback tests/unit/channel_tests.py::ChannelTests::test_queue_delete_rpc_request tests/unit/channel_tests.py::ChannelTests::test_queue_delete_rpc_request_nowait tests/unit/channel_tests.py::ChannelTests::test_queue_purge_legacy_parameter tests/unit/channel_tests.py::ChannelTests::test_queue_purge_raises_channel_wrong_state tests/unit/channel_tests.py::ChannelTests::test_queue_purge_raises_value_error_on_invalid_callback tests/unit/channel_tests.py::ChannelTests::test_queue_purge_rpc_request tests/unit/channel_tests.py::ChannelTests::test_queue_purge_rpc_request_nowait tests/unit/channel_tests.py::ChannelTests::test_queue_unbind_legacy_parameter tests/unit/channel_tests.py::ChannelTests::test_queue_unbind_raises_channel_wrong_state tests/unit/channel_tests.py::ChannelTests::test_queue_unbind_raises_value_error_on_invalid_callback tests/unit/channel_tests.py::ChannelTests::test_queue_unbind_rpc_request tests/unit/channel_tests.py::ChannelTests::test_raise_if_not_open_raises_channel_wrong_state tests/unit/channel_tests.py::ChannelTests::test_repr tests/unit/channel_tests.py::ChannelTests::test_rpc_adds_callback tests/unit/channel_tests.py::ChannelTests::test_rpc_enters_blocking_and_adds_on_synchronous_complete tests/unit/channel_tests.py::ChannelTests::test_rpc_not_blocking_and_no_on_synchronous_complete_when_no_replies tests/unit/channel_tests.py::ChannelTests::test_rpc_raises_channel_wrong_state tests/unit/channel_tests.py::ChannelTests::test_rpc_throws_type_error_with_invalid_callback tests/unit/channel_tests.py::ChannelTests::test_rpc_throws_value_error_with_unacceptable_replies tests/unit/channel_tests.py::ChannelTests::test_rpc_while_blocking_appends_blocked_collection tests/unit/channel_tests.py::ChannelTests::test_send_method tests/unit/channel_tests.py::ChannelTests::test_set_state tests/unit/channel_tests.py::ChannelTests::test_tx_commit_raises_channel_wrong_state tests/unit/channel_tests.py::ChannelTests::test_tx_commit_rpc_request tests/unit/channel_tests.py::ChannelTests::test_tx_rollback_rpc_request tests/unit/channel_tests.py::ChannelTests::test_tx_select_rpc_request tests/unit/connection_tests.py::ConnectionTests::test_add_callbacks tests/unit/connection_tests.py::ConnectionTests::test_add_on_close_callback tests/unit/connection_tests.py::ConnectionTests::test_add_on_connection_blocked_callback tests/unit/connection_tests.py::ConnectionTests::test_add_on_connection_unblocked_callback tests/unit/connection_tests.py::ConnectionTests::test_add_on_open_error_callback tests/unit/connection_tests.py::ConnectionTests::test_blocked_connection_multiple_blocked_in_a_row_sets_timer_once tests/unit/connection_tests.py::ConnectionTests::test_blocked_connection_multiple_unblocked_in_a_row_removes_timer_once tests/unit/connection_tests.py::ConnectionTests::test_blocked_connection_on_stream_terminated_removes_timer tests/unit/connection_tests.py::ConnectionTests::test_blocked_connection_timeout_terminates_connection tests/unit/connection_tests.py::ConnectionTests::test_blocked_connection_unblocked_removes_timer tests/unit/connection_tests.py::ConnectionTests::test_channel tests/unit/connection_tests.py::ConnectionTests::test_channel_on_closed_connection_raises_connection_closed tests/unit/connection_tests.py::ConnectionTests::test_channel_on_closing_connection_raises_connection_closed tests/unit/connection_tests.py::ConnectionTests::test_channel_on_init_connection_raises_connection_closed tests/unit/connection_tests.py::ConnectionTests::test_channel_on_protocol_connection_raises_connection_closed tests/unit/connection_tests.py::ConnectionTests::test_channel_on_start_connection_raises_connection_closed tests/unit/connection_tests.py::ConnectionTests::test_channel_on_tune_connection_raises_connection_closed tests/unit/connection_tests.py::ConnectionTests::test_client_properties tests/unit/connection_tests.py::ConnectionTests::test_client_properties_default tests/unit/connection_tests.py::ConnectionTests::test_client_properties_override tests/unit/connection_tests.py::ConnectionTests::test_close_calls_on_close_ready_when_no_channels tests/unit/connection_tests.py::ConnectionTests::test_close_channels tests/unit/connection_tests.py::ConnectionTests::test_close_closes_open_channels tests/unit/connection_tests.py::ConnectionTests::test_close_closes_opening_channels tests/unit/connection_tests.py::ConnectionTests::test_close_does_not_close_closing_channels tests/unit/connection_tests.py::ConnectionTests::test_close_raises_wrong_state_when_already_closed_or_closing tests/unit/connection_tests.py::ConnectionTests::test_connect_no_adapter_connect_from_constructor_with_external_workflow tests/unit/connection_tests.py::ConnectionTests::test_connection_blocked_sets_timer tests/unit/connection_tests.py::ConnectionTests::test_create_with_blocked_connection_timeout_config tests/unit/connection_tests.py::ConnectionTests::test_deliver_frame_to_channel_with_frame_for_unknown_channel tests/unit/connection_tests.py::ConnectionTests::test_new_conn_should_use_first_channel tests/unit/connection_tests.py::ConnectionTests::test_next_channel_number_returns_lowest_unused tests/unit/connection_tests.py::ConnectionTests::test_no_side_effects_from_message_marshal_error tests/unit/connection_tests.py::ConnectionTests::test_on_channel_cleanup_closing_state_last_channel_calls_on_close_ready tests/unit/connection_tests.py::ConnectionTests::test_on_channel_cleanup_closing_state_more_channels_no_on_close_ready tests/unit/connection_tests.py::ConnectionTests::test_on_channel_cleanup_non_closing_state tests/unit/connection_tests.py::ConnectionTests::test_on_channel_cleanup_with_closing_channels tests/unit/connection_tests.py::ConnectionTests::test_on_connection_close_from_broker_passes_correct_exception tests/unit/connection_tests.py::ConnectionTests::test_on_connection_close_ok tests/unit/connection_tests.py::ConnectionTests::test_on_connection_start tests/unit/connection_tests.py::ConnectionTests::test_on_connection_tune tests/unit/connection_tests.py::ConnectionTests::test_on_data_available tests/unit/connection_tests.py::ConnectionTests::test_on_stream_connected tests/unit/connection_tests.py::ConnectionTests::test_on_stream_terminated_cleans_up tests/unit/connection_tests.py::ConnectionTests::test_on_stream_terminated_invokes_access_denied_on_connection_error_and_closed tests/unit/connection_tests.py::ConnectionTests::test_on_stream_terminated_invokes_auth_on_connection_error_and_closed tests/unit/connection_tests.py::ConnectionTests::test_on_stream_terminated_invokes_connection_closed_callback tests/unit/connection_tests.py::ConnectionTests::test_on_stream_terminated_invokes_protocol_on_connection_error_and_closed tests/unit/connection_tests.py::ConnectionTests::test_send_message_updates_frames_sent_and_bytes_sent tests/unit/heartbeat_tests.py::HeartbeatTests::test_bytes_received_on_connection tests/unit/heartbeat_tests.py::HeartbeatTests::test_check_heartbeat_increment_bytes tests/unit/heartbeat_tests.py::HeartbeatTests::test_check_heartbeat_increment_no_bytes tests/unit/heartbeat_tests.py::HeartbeatTests::test_check_heartbeat_missed_bytes tests/unit/heartbeat_tests.py::HeartbeatTests::test_check_heartbeat_not_closed tests/unit/heartbeat_tests.py::HeartbeatTests::test_check_heartbeat_start_timer tests/unit/heartbeat_tests.py::HeartbeatTests::test_check_heartbeat_update_counters tests/unit/heartbeat_tests.py::HeartbeatTests::test_connection_close tests/unit/heartbeat_tests.py::HeartbeatTests::test_connection_is_idle_false tests/unit/heartbeat_tests.py::HeartbeatTests::test_connection_is_idle_true tests/unit/heartbeat_tests.py::HeartbeatTests::test_constructor_assignment_connection tests/unit/heartbeat_tests.py::HeartbeatTests::test_constructor_assignment_intervals tests/unit/heartbeat_tests.py::HeartbeatTests::test_constructor_called_start_check_timer tests/unit/heartbeat_tests.py::HeartbeatTests::test_constructor_called_start_send_timer tests/unit/heartbeat_tests.py::HeartbeatTests::test_constructor_initial_bytes_received tests/unit/heartbeat_tests.py::HeartbeatTests::test_constructor_initial_bytes_sent tests/unit/heartbeat_tests.py::HeartbeatTests::test_constructor_initial_heartbeat_frames_received tests/unit/heartbeat_tests.py::HeartbeatTests::test_constructor_initial_heartbeat_frames_sent tests/unit/heartbeat_tests.py::HeartbeatTests::test_constructor_initial_idle_byte_intervals tests/unit/heartbeat_tests.py::HeartbeatTests::test_has_received_data_false tests/unit/heartbeat_tests.py::HeartbeatTests::test_has_received_data_true tests/unit/heartbeat_tests.py::HeartbeatTests::test_new_heartbeat_frame tests/unit/heartbeat_tests.py::HeartbeatTests::test_received tests/unit/heartbeat_tests.py::HeartbeatTests::test_send_heartbeat_counter_incremented tests/unit/heartbeat_tests.py::HeartbeatTests::test_send_heartbeat_not_closed tests/unit/heartbeat_tests.py::HeartbeatTests::test_send_heartbeat_send_frame_called tests/unit/heartbeat_tests.py::HeartbeatTests::test_send_heartbeat_sends_heartbeat_frame tests/unit/heartbeat_tests.py::HeartbeatTests::test_send_heartbeat_start_timer tests/unit/heartbeat_tests.py::HeartbeatTests::test_start_send_timer_called tests/unit/heartbeat_tests.py::HeartbeatTests::test_update_counters_bytes_received tests/unit/heartbeat_tests.py::HeartbeatTests::test_update_counters_bytes_sent
tests/acceptance/async_adapter_tests.py::TestA_Connect::test_with_asyncio tests/acceptance/async_adapter_tests.py::TestA_Connect::test_with_select_default tests/acceptance/async_adapter_tests.py::TestA_Connect::test_with_select_epoll tests/acceptance/async_adapter_tests.py::TestA_Connect::test_with_select_poll tests/acceptance/async_adapter_tests.py::TestA_Connect::test_with_select_select tests/acceptance/async_adapter_tests.py::TestA_Connect::test_with_tornado tests/acceptance/async_adapter_tests.py::TestConstructAndImmediatelyCloseConnection::test_with_asyncio tests/acceptance/async_adapter_tests.py::TestConstructAndImmediatelyCloseConnection::test_with_select_default tests/acceptance/async_adapter_tests.py::TestConstructAndImmediatelyCloseConnection::test_with_select_epoll tests/acceptance/async_adapter_tests.py::TestConstructAndImmediatelyCloseConnection::test_with_select_poll tests/acceptance/async_adapter_tests.py::TestConstructAndImmediatelyCloseConnection::test_with_select_select tests/acceptance/async_adapter_tests.py::TestConstructAndImmediatelyCloseConnection::test_with_tornado tests/acceptance/async_adapter_tests.py::TestCloseConnectionDuringAMQPHandshake::test_with_asyncio tests/acceptance/async_adapter_tests.py::TestCloseConnectionDuringAMQPHandshake::test_with_select_default tests/acceptance/async_adapter_tests.py::TestCloseConnectionDuringAMQPHandshake::test_with_select_epoll tests/acceptance/async_adapter_tests.py::TestCloseConnectionDuringAMQPHandshake::test_with_select_poll tests/acceptance/async_adapter_tests.py::TestCloseConnectionDuringAMQPHandshake::test_with_select_select tests/acceptance/async_adapter_tests.py::TestCloseConnectionDuringAMQPHandshake::test_with_tornado tests/acceptance/async_adapter_tests.py::TestSocketConnectTimeoutWithTinySocketTimeout::test_with_asyncio tests/acceptance/async_adapter_tests.py::TestSocketConnectTimeoutWithTinySocketTimeout::test_with_select_default tests/acceptance/async_adapter_tests.py::TestSocketConnectTimeoutWithTinySocketTimeout::test_with_select_epoll tests/acceptance/async_adapter_tests.py::TestSocketConnectTimeoutWithTinySocketTimeout::test_with_select_poll tests/acceptance/async_adapter_tests.py::TestSocketConnectTimeoutWithTinySocketTimeout::test_with_select_select tests/acceptance/async_adapter_tests.py::TestSocketConnectTimeoutWithTinySocketTimeout::test_with_tornado tests/acceptance/async_adapter_tests.py::TestStackConnectionTimeoutWithTinyStackTimeout::test_with_asyncio tests/acceptance/async_adapter_tests.py::TestStackConnectionTimeoutWithTinyStackTimeout::test_with_select_default tests/acceptance/async_adapter_tests.py::TestStackConnectionTimeoutWithTinyStackTimeout::test_with_select_epoll tests/acceptance/async_adapter_tests.py::TestStackConnectionTimeoutWithTinyStackTimeout::test_with_select_poll tests/acceptance/async_adapter_tests.py::TestStackConnectionTimeoutWithTinyStackTimeout::test_with_select_select tests/acceptance/async_adapter_tests.py::TestStackConnectionTimeoutWithTinyStackTimeout::test_with_tornado tests/acceptance/async_adapter_tests.py::TestCreateConnectionViaDefaultConnectionWorkflow::test_with_asyncio tests/acceptance/async_adapter_tests.py::TestCreateConnectionViaDefaultConnectionWorkflow::test_with_select_default tests/acceptance/async_adapter_tests.py::TestCreateConnectionViaDefaultConnectionWorkflow::test_with_select_epoll tests/acceptance/async_adapter_tests.py::TestCreateConnectionViaDefaultConnectionWorkflow::test_with_select_poll tests/acceptance/async_adapter_tests.py::TestCreateConnectionViaDefaultConnectionWorkflow::test_with_select_select tests/acceptance/async_adapter_tests.py::TestCreateConnectionViaDefaultConnectionWorkflow::test_with_tornado tests/acceptance/async_adapter_tests.py::TestCreateConnectionViaCustomConnectionWorkflow::test_with_asyncio tests/acceptance/async_adapter_tests.py::TestCreateConnectionViaCustomConnectionWorkflow::test_with_select_default tests/acceptance/async_adapter_tests.py::TestCreateConnectionViaCustomConnectionWorkflow::test_with_select_epoll tests/acceptance/async_adapter_tests.py::TestCreateConnectionViaCustomConnectionWorkflow::test_with_select_poll tests/acceptance/async_adapter_tests.py::TestCreateConnectionViaCustomConnectionWorkflow::test_with_select_select tests/acceptance/async_adapter_tests.py::TestCreateConnectionViaCustomConnectionWorkflow::test_with_tornado tests/acceptance/async_adapter_tests.py::TestCreateConnectionMultipleConfigsDefaultConnectionWorkflow::test_with_asyncio tests/acceptance/async_adapter_tests.py::TestCreateConnectionMultipleConfigsDefaultConnectionWorkflow::test_with_select_default tests/acceptance/async_adapter_tests.py::TestCreateConnectionMultipleConfigsDefaultConnectionWorkflow::test_with_select_epoll tests/acceptance/async_adapter_tests.py::TestCreateConnectionMultipleConfigsDefaultConnectionWorkflow::test_with_select_poll tests/acceptance/async_adapter_tests.py::TestCreateConnectionMultipleConfigsDefaultConnectionWorkflow::test_with_select_select tests/acceptance/async_adapter_tests.py::TestCreateConnectionMultipleConfigsDefaultConnectionWorkflow::test_with_tornado tests/acceptance/async_adapter_tests.py::TestCreateConnectionRetriesWithDefaultConnectionWorkflow::test_with_asyncio tests/acceptance/async_adapter_tests.py::TestCreateConnectionRetriesWithDefaultConnectionWorkflow::test_with_select_default tests/acceptance/async_adapter_tests.py::TestCreateConnectionRetriesWithDefaultConnectionWorkflow::test_with_select_epoll tests/acceptance/async_adapter_tests.py::TestCreateConnectionRetriesWithDefaultConnectionWorkflow::test_with_select_poll tests/acceptance/async_adapter_tests.py::TestCreateConnectionRetriesWithDefaultConnectionWorkflow::test_with_select_select tests/acceptance/async_adapter_tests.py::TestCreateConnectionRetriesWithDefaultConnectionWorkflow::test_with_tornado tests/acceptance/async_adapter_tests.py::TestCreateConnectionConnectionWorkflowSocketConnectionFailure::test_with_asyncio tests/acceptance/async_adapter_tests.py::TestCreateConnectionConnectionWorkflowSocketConnectionFailure::test_with_select_default tests/acceptance/async_adapter_tests.py::TestCreateConnectionConnectionWorkflowSocketConnectionFailure::test_with_select_epoll tests/acceptance/async_adapter_tests.py::TestCreateConnectionConnectionWorkflowSocketConnectionFailure::test_with_select_poll tests/acceptance/async_adapter_tests.py::TestCreateConnectionConnectionWorkflowSocketConnectionFailure::test_with_select_select tests/acceptance/async_adapter_tests.py::TestCreateConnectionConnectionWorkflowSocketConnectionFailure::test_with_tornado tests/acceptance/async_adapter_tests.py::TestCreateConnectionAMQPHandshakeTimesOutDefaultWorkflow::test_with_asyncio tests/acceptance/async_adapter_tests.py::TestCreateConnectionAMQPHandshakeTimesOutDefaultWorkflow::test_with_select_default tests/acceptance/async_adapter_tests.py::TestCreateConnectionAMQPHandshakeTimesOutDefaultWorkflow::test_with_select_epoll tests/acceptance/async_adapter_tests.py::TestCreateConnectionAMQPHandshakeTimesOutDefaultWorkflow::test_with_select_poll tests/acceptance/async_adapter_tests.py::TestCreateConnectionAMQPHandshakeTimesOutDefaultWorkflow::test_with_select_select tests/acceptance/async_adapter_tests.py::TestCreateConnectionAMQPHandshakeTimesOutDefaultWorkflow::test_with_tornado tests/acceptance/async_adapter_tests.py::TestCreateConnectionAndImmediatelyAbortDefaultConnectionWorkflow::test_with_asyncio tests/acceptance/async_adapter_tests.py::TestCreateConnectionAndImmediatelyAbortDefaultConnectionWorkflow::test_with_select_default tests/acceptance/async_adapter_tests.py::TestCreateConnectionAndImmediatelyAbortDefaultConnectionWorkflow::test_with_select_epoll tests/acceptance/async_adapter_tests.py::TestCreateConnectionAndImmediatelyAbortDefaultConnectionWorkflow::test_with_select_poll tests/acceptance/async_adapter_tests.py::TestCreateConnectionAndImmediatelyAbortDefaultConnectionWorkflow::test_with_select_select tests/acceptance/async_adapter_tests.py::TestCreateConnectionAndImmediatelyAbortDefaultConnectionWorkflow::test_with_tornado tests/acceptance/async_adapter_tests.py::TestCreateConnectionAndAsynchronouslyAbortDefaultConnectionWorkflow::test_with_asyncio tests/acceptance/async_adapter_tests.py::TestCreateConnectionAndAsynchronouslyAbortDefaultConnectionWorkflow::test_with_select_default tests/acceptance/async_adapter_tests.py::TestCreateConnectionAndAsynchronouslyAbortDefaultConnectionWorkflow::test_with_select_epoll tests/acceptance/async_adapter_tests.py::TestCreateConnectionAndAsynchronouslyAbortDefaultConnectionWorkflow::test_with_select_poll tests/acceptance/async_adapter_tests.py::TestCreateConnectionAndAsynchronouslyAbortDefaultConnectionWorkflow::test_with_select_select tests/acceptance/async_adapter_tests.py::TestCreateConnectionAndAsynchronouslyAbortDefaultConnectionWorkflow::test_with_tornado tests/acceptance/async_adapter_tests.py::TestConfirmSelect::test_with_asyncio tests/acceptance/async_adapter_tests.py::TestConfirmSelect::test_with_select_default tests/acceptance/async_adapter_tests.py::TestConfirmSelect::test_with_select_epoll tests/acceptance/async_adapter_tests.py::TestConfirmSelect::test_with_select_poll tests/acceptance/async_adapter_tests.py::TestConfirmSelect::test_with_select_select tests/acceptance/async_adapter_tests.py::TestConfirmSelect::test_with_tornado tests/acceptance/async_adapter_tests.py::TestBlockingNonBlockingBlockingRPCWontStall::test_with_asyncio tests/acceptance/async_adapter_tests.py::TestBlockingNonBlockingBlockingRPCWontStall::test_with_select_default tests/acceptance/async_adapter_tests.py::TestBlockingNonBlockingBlockingRPCWontStall::test_with_select_epoll tests/acceptance/async_adapter_tests.py::TestBlockingNonBlockingBlockingRPCWontStall::test_with_select_poll tests/acceptance/async_adapter_tests.py::TestBlockingNonBlockingBlockingRPCWontStall::test_with_select_select tests/acceptance/async_adapter_tests.py::TestBlockingNonBlockingBlockingRPCWontStall::test_with_tornado tests/acceptance/async_adapter_tests.py::TestConsumeCancel::test_with_asyncio tests/acceptance/async_adapter_tests.py::TestConsumeCancel::test_with_select_default tests/acceptance/async_adapter_tests.py::TestConsumeCancel::test_with_select_epoll tests/acceptance/async_adapter_tests.py::TestConsumeCancel::test_with_select_poll tests/acceptance/async_adapter_tests.py::TestConsumeCancel::test_with_select_select tests/acceptance/async_adapter_tests.py::TestConsumeCancel::test_with_tornado tests/acceptance/async_adapter_tests.py::TestExchangeDeclareAndDelete::test_with_asyncio tests/acceptance/async_adapter_tests.py::TestExchangeDeclareAndDelete::test_with_select_default tests/acceptance/async_adapter_tests.py::TestExchangeDeclareAndDelete::test_with_select_epoll tests/acceptance/async_adapter_tests.py::TestExchangeDeclareAndDelete::test_with_select_poll tests/acceptance/async_adapter_tests.py::TestExchangeDeclareAndDelete::test_with_select_select tests/acceptance/async_adapter_tests.py::TestExchangeDeclareAndDelete::test_with_tornado tests/acceptance/async_adapter_tests.py::TestExchangeRedeclareWithDifferentValues::test_with_asyncio tests/acceptance/async_adapter_tests.py::TestExchangeRedeclareWithDifferentValues::test_with_select_default tests/acceptance/async_adapter_tests.py::TestExchangeRedeclareWithDifferentValues::test_with_select_epoll tests/acceptance/async_adapter_tests.py::TestExchangeRedeclareWithDifferentValues::test_with_select_poll tests/acceptance/async_adapter_tests.py::TestExchangeRedeclareWithDifferentValues::test_with_select_select tests/acceptance/async_adapter_tests.py::TestExchangeRedeclareWithDifferentValues::test_with_tornado tests/acceptance/async_adapter_tests.py::TestNoDeadlockWhenClosingChannelWithPendingBlockedRequestsAndConcurrentChannelCloseFromBroker::test_with_asyncio tests/acceptance/async_adapter_tests.py::TestNoDeadlockWhenClosingChannelWithPendingBlockedRequestsAndConcurrentChannelCloseFromBroker::test_with_select_default tests/acceptance/async_adapter_tests.py::TestNoDeadlockWhenClosingChannelWithPendingBlockedRequestsAndConcurrentChannelCloseFromBroker::test_with_select_epoll tests/acceptance/async_adapter_tests.py::TestNoDeadlockWhenClosingChannelWithPendingBlockedRequestsAndConcurrentChannelCloseFromBroker::test_with_select_poll tests/acceptance/async_adapter_tests.py::TestNoDeadlockWhenClosingChannelWithPendingBlockedRequestsAndConcurrentChannelCloseFromBroker::test_with_select_select tests/acceptance/async_adapter_tests.py::TestNoDeadlockWhenClosingChannelWithPendingBlockedRequestsAndConcurrentChannelCloseFromBroker::test_with_tornado tests/acceptance/async_adapter_tests.py::TestClosingAChannelPermitsBlockedRequestToComplete::test_with_asyncio tests/acceptance/async_adapter_tests.py::TestClosingAChannelPermitsBlockedRequestToComplete::test_with_select_default tests/acceptance/async_adapter_tests.py::TestClosingAChannelPermitsBlockedRequestToComplete::test_with_select_epoll tests/acceptance/async_adapter_tests.py::TestClosingAChannelPermitsBlockedRequestToComplete::test_with_select_poll tests/acceptance/async_adapter_tests.py::TestClosingAChannelPermitsBlockedRequestToComplete::test_with_select_select tests/acceptance/async_adapter_tests.py::TestClosingAChannelPermitsBlockedRequestToComplete::test_with_tornado tests/acceptance/async_adapter_tests.py::TestQueueUnnamedDeclareAndDelete::test_with_asyncio tests/acceptance/async_adapter_tests.py::TestQueueUnnamedDeclareAndDelete::test_with_select_default tests/acceptance/async_adapter_tests.py::TestQueueUnnamedDeclareAndDelete::test_with_select_epoll tests/acceptance/async_adapter_tests.py::TestQueueUnnamedDeclareAndDelete::test_with_select_poll tests/acceptance/async_adapter_tests.py::TestQueueUnnamedDeclareAndDelete::test_with_select_select tests/acceptance/async_adapter_tests.py::TestQueueUnnamedDeclareAndDelete::test_with_tornado tests/acceptance/async_adapter_tests.py::TestQueueNamedDeclareAndDelete::test_with_asyncio tests/acceptance/async_adapter_tests.py::TestQueueNamedDeclareAndDelete::test_with_select_default tests/acceptance/async_adapter_tests.py::TestQueueNamedDeclareAndDelete::test_with_select_epoll tests/acceptance/async_adapter_tests.py::TestQueueNamedDeclareAndDelete::test_with_select_poll tests/acceptance/async_adapter_tests.py::TestQueueNamedDeclareAndDelete::test_with_select_select tests/acceptance/async_adapter_tests.py::TestQueueNamedDeclareAndDelete::test_with_tornado tests/acceptance/async_adapter_tests.py::TestQueueRedeclareWithDifferentValues::test_with_asyncio tests/acceptance/async_adapter_tests.py::TestQueueRedeclareWithDifferentValues::test_with_select_default tests/acceptance/async_adapter_tests.py::TestQueueRedeclareWithDifferentValues::test_with_select_epoll tests/acceptance/async_adapter_tests.py::TestQueueRedeclareWithDifferentValues::test_with_select_poll tests/acceptance/async_adapter_tests.py::TestQueueRedeclareWithDifferentValues::test_with_select_select tests/acceptance/async_adapter_tests.py::TestQueueRedeclareWithDifferentValues::test_with_tornado tests/acceptance/async_adapter_tests.py::TestTX1_Select::test_with_asyncio tests/acceptance/async_adapter_tests.py::TestTX1_Select::test_with_select_default tests/acceptance/async_adapter_tests.py::TestTX1_Select::test_with_select_epoll tests/acceptance/async_adapter_tests.py::TestTX1_Select::test_with_select_poll tests/acceptance/async_adapter_tests.py::TestTX1_Select::test_with_select_select tests/acceptance/async_adapter_tests.py::TestTX1_Select::test_with_tornado tests/acceptance/async_adapter_tests.py::TestTX2_Commit::test_with_asyncio tests/acceptance/async_adapter_tests.py::TestTX2_Commit::test_with_select_default tests/acceptance/async_adapter_tests.py::TestTX2_Commit::test_with_select_epoll tests/acceptance/async_adapter_tests.py::TestTX2_Commit::test_with_select_poll tests/acceptance/async_adapter_tests.py::TestTX2_Commit::test_with_select_select tests/acceptance/async_adapter_tests.py::TestTX2_Commit::test_with_tornado tests/acceptance/async_adapter_tests.py::TestTX2_CommitFailure::test_with_asyncio tests/acceptance/async_adapter_tests.py::TestTX2_CommitFailure::test_with_select_default tests/acceptance/async_adapter_tests.py::TestTX2_CommitFailure::test_with_select_epoll tests/acceptance/async_adapter_tests.py::TestTX2_CommitFailure::test_with_select_poll tests/acceptance/async_adapter_tests.py::TestTX2_CommitFailure::test_with_select_select tests/acceptance/async_adapter_tests.py::TestTX2_CommitFailure::test_with_tornado tests/acceptance/async_adapter_tests.py::TestTX3_Rollback::test_with_asyncio tests/acceptance/async_adapter_tests.py::TestTX3_Rollback::test_with_select_default tests/acceptance/async_adapter_tests.py::TestTX3_Rollback::test_with_select_epoll tests/acceptance/async_adapter_tests.py::TestTX3_Rollback::test_with_select_poll tests/acceptance/async_adapter_tests.py::TestTX3_Rollback::test_with_select_select tests/acceptance/async_adapter_tests.py::TestTX3_Rollback::test_with_tornado tests/acceptance/async_adapter_tests.py::TestTX3_RollbackFailure::test_with_asyncio tests/acceptance/async_adapter_tests.py::TestTX3_RollbackFailure::test_with_select_default tests/acceptance/async_adapter_tests.py::TestTX3_RollbackFailure::test_with_select_epoll tests/acceptance/async_adapter_tests.py::TestTX3_RollbackFailure::test_with_select_poll tests/acceptance/async_adapter_tests.py::TestTX3_RollbackFailure::test_with_select_select tests/acceptance/async_adapter_tests.py::TestTX3_RollbackFailure::test_with_tornado tests/acceptance/async_adapter_tests.py::TestZ_PublishAndConsume::test_with_asyncio tests/acceptance/async_adapter_tests.py::TestZ_PublishAndConsume::test_with_select_default tests/acceptance/async_adapter_tests.py::TestZ_PublishAndConsume::test_with_select_epoll tests/acceptance/async_adapter_tests.py::TestZ_PublishAndConsume::test_with_select_poll tests/acceptance/async_adapter_tests.py::TestZ_PublishAndConsume::test_with_select_select tests/acceptance/async_adapter_tests.py::TestZ_PublishAndConsume::test_with_tornado tests/acceptance/async_adapter_tests.py::TestZ_PublishAndConsumeBig::test_with_asyncio tests/acceptance/async_adapter_tests.py::TestZ_PublishAndConsumeBig::test_with_select_default tests/acceptance/async_adapter_tests.py::TestZ_PublishAndConsumeBig::test_with_select_epoll tests/acceptance/async_adapter_tests.py::TestZ_PublishAndConsumeBig::test_with_select_poll tests/acceptance/async_adapter_tests.py::TestZ_PublishAndConsumeBig::test_with_select_select tests/acceptance/async_adapter_tests.py::TestZ_PublishAndConsumeBig::test_with_tornado tests/acceptance/async_adapter_tests.py::TestZ_PublishAndGet::test_with_asyncio tests/acceptance/async_adapter_tests.py::TestZ_PublishAndGet::test_with_select_default tests/acceptance/async_adapter_tests.py::TestZ_PublishAndGet::test_with_select_epoll tests/acceptance/async_adapter_tests.py::TestZ_PublishAndGet::test_with_select_poll tests/acceptance/async_adapter_tests.py::TestZ_PublishAndGet::test_with_select_select tests/acceptance/async_adapter_tests.py::TestZ_PublishAndGet::test_with_tornado tests/acceptance/async_adapter_tests.py::TestZ_AccessDenied::test_with_asyncio tests/acceptance/async_adapter_tests.py::TestZ_AccessDenied::test_with_select_default tests/acceptance/async_adapter_tests.py::TestZ_AccessDenied::test_with_select_epoll tests/acceptance/async_adapter_tests.py::TestZ_AccessDenied::test_with_select_poll tests/acceptance/async_adapter_tests.py::TestZ_AccessDenied::test_with_select_select tests/acceptance/async_adapter_tests.py::TestZ_AccessDenied::test_with_tornado tests/acceptance/async_adapter_tests.py::TestBlockedConnectionTimesOut::test_with_asyncio tests/acceptance/async_adapter_tests.py::TestBlockedConnectionTimesOut::test_with_select_default tests/acceptance/async_adapter_tests.py::TestBlockedConnectionTimesOut::test_with_select_epoll tests/acceptance/async_adapter_tests.py::TestBlockedConnectionTimesOut::test_with_select_poll tests/acceptance/async_adapter_tests.py::TestBlockedConnectionTimesOut::test_with_select_select tests/acceptance/async_adapter_tests.py::TestBlockedConnectionTimesOut::test_with_tornado tests/acceptance/async_adapter_tests.py::TestBlockedConnectionUnblocks::test_with_asyncio tests/acceptance/async_adapter_tests.py::TestBlockedConnectionUnblocks::test_with_select_default tests/acceptance/async_adapter_tests.py::TestBlockedConnectionUnblocks::test_with_select_epoll tests/acceptance/async_adapter_tests.py::TestBlockedConnectionUnblocks::test_with_select_poll tests/acceptance/async_adapter_tests.py::TestBlockedConnectionUnblocks::test_with_select_select tests/acceptance/async_adapter_tests.py::TestBlockedConnectionUnblocks::test_with_tornado tests/acceptance/async_adapter_tests.py::TestAddCallbackThreadsafeRequestBeforeIOLoopStarts::test_with_asyncio tests/acceptance/async_adapter_tests.py::TestAddCallbackThreadsafeRequestBeforeIOLoopStarts::test_with_select_default tests/acceptance/async_adapter_tests.py::TestAddCallbackThreadsafeRequestBeforeIOLoopStarts::test_with_select_epoll tests/acceptance/async_adapter_tests.py::TestAddCallbackThreadsafeRequestBeforeIOLoopStarts::test_with_select_poll tests/acceptance/async_adapter_tests.py::TestAddCallbackThreadsafeRequestBeforeIOLoopStarts::test_with_select_select tests/acceptance/async_adapter_tests.py::TestAddCallbackThreadsafeRequestBeforeIOLoopStarts::test_with_tornado tests/acceptance/async_adapter_tests.py::TestAddCallbackThreadsafeFromIOLoopThread::test_with_asyncio tests/acceptance/async_adapter_tests.py::TestAddCallbackThreadsafeFromIOLoopThread::test_with_select_default tests/acceptance/async_adapter_tests.py::TestAddCallbackThreadsafeFromIOLoopThread::test_with_select_epoll tests/acceptance/async_adapter_tests.py::TestAddCallbackThreadsafeFromIOLoopThread::test_with_select_poll tests/acceptance/async_adapter_tests.py::TestAddCallbackThreadsafeFromIOLoopThread::test_with_select_select tests/acceptance/async_adapter_tests.py::TestAddCallbackThreadsafeFromIOLoopThread::test_with_tornado tests/acceptance/async_adapter_tests.py::TestAddCallbackThreadsafeFromAnotherThread::test_with_asyncio tests/acceptance/async_adapter_tests.py::TestAddCallbackThreadsafeFromAnotherThread::test_with_select_default tests/acceptance/async_adapter_tests.py::TestAddCallbackThreadsafeFromAnotherThread::test_with_select_epoll tests/acceptance/async_adapter_tests.py::TestAddCallbackThreadsafeFromAnotherThread::test_with_select_poll tests/acceptance/async_adapter_tests.py::TestAddCallbackThreadsafeFromAnotherThread::test_with_select_select tests/acceptance/async_adapter_tests.py::TestAddCallbackThreadsafeFromAnotherThread::test_with_tornado tests/acceptance/async_adapter_tests.py::TestIOLoopStopBeforeIOLoopStarts::test_with_asyncio tests/acceptance/async_adapter_tests.py::TestIOLoopStopBeforeIOLoopStarts::test_with_select_default tests/acceptance/async_adapter_tests.py::TestIOLoopStopBeforeIOLoopStarts::test_with_select_epoll tests/acceptance/async_adapter_tests.py::TestIOLoopStopBeforeIOLoopStarts::test_with_select_poll tests/acceptance/async_adapter_tests.py::TestIOLoopStopBeforeIOLoopStarts::test_with_select_select tests/acceptance/async_adapter_tests.py::TestIOLoopStopBeforeIOLoopStarts::test_with_tornado tests/acceptance/async_adapter_tests.py::TestViabilityOfMultipleTimeoutsWithSameDeadlineAndCallback::test_with_asyncio tests/acceptance/async_adapter_tests.py::TestViabilityOfMultipleTimeoutsWithSameDeadlineAndCallback::test_with_select_default tests/acceptance/async_adapter_tests.py::TestViabilityOfMultipleTimeoutsWithSameDeadlineAndCallback::test_with_select_epoll tests/acceptance/async_adapter_tests.py::TestViabilityOfMultipleTimeoutsWithSameDeadlineAndCallback::test_with_select_poll tests/acceptance/async_adapter_tests.py::TestViabilityOfMultipleTimeoutsWithSameDeadlineAndCallback::test_with_select_select tests/acceptance/async_adapter_tests.py::TestViabilityOfMultipleTimeoutsWithSameDeadlineAndCallback::test_with_tornado tests/acceptance/blocking_adapter_test.py::TestCreateAndCloseConnection::test tests/acceptance/blocking_adapter_test.py::TestCreateConnectionWithNoneSocketAndStackTimeouts::test tests/acceptance/blocking_adapter_test.py::TestCreateConnectionFromTwoConfigsFirstUnreachable::test tests/acceptance/blocking_adapter_test.py::TestMultiCloseConnectionRaisesWrongState::test tests/acceptance/blocking_adapter_test.py::TestConnectionContextManagerClosesConnection::test tests/acceptance/blocking_adapter_test.py::TestConnectionContextManagerExitSurvivesClosedConnection::test tests/acceptance/blocking_adapter_test.py::TestConnectionContextManagerClosesConnectionAndPassesOriginalException::test tests/acceptance/blocking_adapter_test.py::TestConnectionContextManagerClosesConnectionAndPassesSystemException::test tests/acceptance/blocking_adapter_test.py::TestLostConnectionResultsInIsClosedConnectionAndChannel::test tests/acceptance/blocking_adapter_test.py::TestInvalidExchangeTypeRaisesConnectionClosed::test tests/acceptance/blocking_adapter_test.py::TestCreateAndCloseConnectionWithChannelAndConsumer::test tests/acceptance/blocking_adapter_test.py::TestUsingInvalidQueueArgument::test tests/acceptance/blocking_adapter_test.py::TestSuddenBrokerDisconnectBeforeChannel::test tests/acceptance/blocking_adapter_test.py::TestNoAccessToConnectionAfterConnectionLost::test tests/acceptance/blocking_adapter_test.py::TestDisconnectDuringConnectionStart::test tests/acceptance/blocking_adapter_test.py::TestDisconnectDuringConnectionTune::test tests/acceptance/blocking_adapter_test.py::TestProcessDataEvents::test tests/acceptance/blocking_adapter_test.py::TestConnectionRegisterForBlockAndUnblock::test tests/acceptance/blocking_adapter_test.py::TestBlockedConnectionTimeout::test tests/acceptance/blocking_adapter_test.py::TestAddCallbackThreadsafeFromSameThread::test tests/acceptance/blocking_adapter_test.py::TestAddCallbackThreadsafeFromAnotherThread::test tests/acceptance/blocking_adapter_test.py::TestAddCallbackThreadsafeOnClosedConnectionRaisesWrongState::test tests/acceptance/blocking_adapter_test.py::TestAddTimeoutRemoveTimeout::test tests/acceptance/blocking_adapter_test.py::TestViabilityOfMultipleTimeoutsWithSameDeadlineAndCallback::test tests/acceptance/blocking_adapter_test.py::TestRemoveTimeoutFromTimeoutCallback::test tests/acceptance/blocking_adapter_test.py::TestSleep::test tests/acceptance/blocking_adapter_test.py::TestConnectionProperties::test tests/acceptance/blocking_adapter_test.py::TestCreateAndCloseChannel::test tests/acceptance/blocking_adapter_test.py::TestExchangeDeclareAndDelete::test tests/acceptance/blocking_adapter_test.py::TestExchangeBindAndUnbind::test tests/acceptance/blocking_adapter_test.py::TestQueueDeclareAndDelete::test tests/acceptance/blocking_adapter_test.py::TestPassiveQueueDeclareOfUnknownQueueRaisesChannelClosed::test tests/acceptance/blocking_adapter_test.py::TestQueueBindAndUnbindAndPurge::test tests/acceptance/blocking_adapter_test.py::TestBasicGet::test tests/acceptance/blocking_adapter_test.py::TestBasicReject::test tests/acceptance/blocking_adapter_test.py::TestBasicRejectNoRequeue::test tests/acceptance/blocking_adapter_test.py::TestBasicNack::test tests/acceptance/blocking_adapter_test.py::TestBasicNackNoRequeue::test tests/acceptance/blocking_adapter_test.py::TestBasicNackMultiple::test tests/acceptance/blocking_adapter_test.py::TestBasicRecoverWithRequeue::test tests/acceptance/blocking_adapter_test.py::TestTxCommit::test tests/acceptance/blocking_adapter_test.py::TestTxRollback::test tests/acceptance/blocking_adapter_test.py::TestBasicConsumeFromUnknownQueueRaisesChannelClosed::test tests/acceptance/blocking_adapter_test.py::TestPublishAndBasicPublishWithPubacksUnroutable::test tests/acceptance/blocking_adapter_test.py::TestConfirmDeliveryAfterUnroutableMessage::test tests/acceptance/blocking_adapter_test.py::TestUnroutableMessagesReturnedInNonPubackMode::test tests/acceptance/blocking_adapter_test.py::TestUnroutableMessageReturnedInPubackMode::test tests/acceptance/blocking_adapter_test.py::TestBasicPublishDeliveredWhenPendingUnroutable::test tests/acceptance/blocking_adapter_test.py::TestPublishAndConsumeWithPubacksAndQosOfOne::test tests/acceptance/blocking_adapter_test.py::TestBasicConsumeWithAckFromAnotherThread::test tests/acceptance/blocking_adapter_test.py::TestConsumeGeneratorWithAckFromAnotherThread::test tests/acceptance/blocking_adapter_test.py::TestTwoBasicConsumersOnSameChannel::test tests/acceptance/blocking_adapter_test.py::TestBasicCancelPurgesPendingConsumerCancellationEvt::test tests/acceptance/blocking_adapter_test.py::TestBasicPublishWithoutPubacks::test tests/acceptance/blocking_adapter_test.py::TestPublishFromBasicConsumeCallback::test tests/acceptance/blocking_adapter_test.py::TestStopConsumingFromBasicConsumeCallback::test tests/acceptance/blocking_adapter_test.py::TestCloseChannelFromBasicConsumeCallback::test tests/acceptance/blocking_adapter_test.py::TestCloseConnectionFromBasicConsumeCallback::test tests/acceptance/blocking_adapter_test.py::TestStartConsumingRaisesChannelClosedOnSameChannelFailure::test tests/acceptance/blocking_adapter_test.py::TestStartConsumingReturnsAfterCancelFromBroker::test tests/acceptance/blocking_adapter_test.py::TestNonPubAckPublishAndConsumeHugeMessage::test tests/acceptance/blocking_adapter_test.py::TestNonPubAckPublishAndConsumeManyMessages::test tests/acceptance/blocking_adapter_test.py::TestBasicCancelWithNonAckableConsumer::test tests/acceptance/blocking_adapter_test.py::TestBasicCancelWithAckableConsumer::test tests/acceptance/blocking_adapter_test.py::TestUnackedMessageAutoRestoredToQueueOnChannelClose::test tests/acceptance/blocking_adapter_test.py::TestNoAckMessageNotRestoredToQueueOnChannelClose::test tests/acceptance/blocking_adapter_test.py::TestConsumeGeneratorInactivityTimeout::test tests/acceptance/blocking_adapter_test.py::TestConsumeGeneratorInterruptedByCancelFromBroker::test tests/acceptance/blocking_adapter_test.py::TestConsumeGeneratorCancelEncountersCancelFromBroker::test tests/acceptance/blocking_adapter_test.py::TestConsumeGeneratorPassesChannelClosedOnSameChannelFailure::test tests/acceptance/blocking_adapter_test.py::TestChannelFlow::test tests/acceptance/blocking_adapter_test.py::TestChannelRaisesWrongStateWhenDeclaringQueueOnClosedChannel::test tests/acceptance/blocking_adapter_test.py::TestChannelRaisesWrongStateWhenClosingClosedChannel::test tests/acceptance/blocking_adapter_test.py::TestChannelContextManagerClosesChannel::test tests/acceptance/blocking_adapter_test.py::TestChannelContextManagerExitSurvivesClosedChannel::test tests/acceptance/blocking_adapter_test.py::TestChannelContextManagerDoesNotSuppressChannelClosedByBroker::test
pika/adapters/blocking_connection.py pika/heartbeat.py examples/send.py pika/adapters/twisted_connection.py pika/connection.py pika/adapters/base_connection.py docs/version_history.rst examples/consumer_simple.py
pika/adapters/blocking_connection.py pika/heartbeat.py examples/send.py pika/adapters/twisted_connection.py pika/connection.py pika/adapters/base_connection.py docs/version_history.rst examples/consumer_simple.py