mirror of
https://github.com/python/cpython.git
synced 2025-07-24 11:44:31 +00:00
Issue #28369: Raise an error when transport's FD is used with add_reader
This commit is contained in:
parent
9eb6c67776
commit
5b8d4f97f8
6 changed files with 177 additions and 109 deletions
|
@ -1148,10 +1148,10 @@ class BaseEventLoopWithSelectorTests(test_utils.TestCase):
|
|||
m_socket.getaddrinfo = socket.getaddrinfo
|
||||
sock = m_socket.socket.return_value
|
||||
|
||||
self.loop.add_reader = mock.Mock()
|
||||
self.loop.add_reader._is_coroutine = False
|
||||
self.loop.add_writer = mock.Mock()
|
||||
self.loop.add_writer._is_coroutine = False
|
||||
self.loop._add_reader = mock.Mock()
|
||||
self.loop._add_reader._is_coroutine = False
|
||||
self.loop._add_writer = mock.Mock()
|
||||
self.loop._add_writer._is_coroutine = False
|
||||
|
||||
coro = self.loop.create_connection(asyncio.Protocol, '1.2.3.4', 80)
|
||||
t, p = self.loop.run_until_complete(coro)
|
||||
|
@ -1194,10 +1194,10 @@ class BaseEventLoopWithSelectorTests(test_utils.TestCase):
|
|||
m_socket.getaddrinfo = socket.getaddrinfo
|
||||
sock = m_socket.socket.return_value
|
||||
|
||||
self.loop.add_reader = mock.Mock()
|
||||
self.loop.add_reader._is_coroutine = False
|
||||
self.loop.add_writer = mock.Mock()
|
||||
self.loop.add_writer._is_coroutine = False
|
||||
self.loop._add_reader = mock.Mock()
|
||||
self.loop._add_reader._is_coroutine = False
|
||||
self.loop._add_writer = mock.Mock()
|
||||
self.loop._add_writer._is_coroutine = False
|
||||
|
||||
for service, port in ('http', 80), (b'http', 80):
|
||||
coro = self.loop.create_connection(asyncio.Protocol,
|
||||
|
@ -1614,8 +1614,8 @@ class BaseEventLoopWithSelectorTests(test_utils.TestCase):
|
|||
|
||||
m_socket.getaddrinfo = getaddrinfo
|
||||
m_socket.socket.return_value.bind = bind = mock.Mock()
|
||||
self.loop.add_reader = mock.Mock()
|
||||
self.loop.add_reader._is_coroutine = False
|
||||
self.loop._add_reader = mock.Mock()
|
||||
self.loop._add_reader._is_coroutine = False
|
||||
|
||||
reuseport_supported = hasattr(socket, 'SO_REUSEPORT')
|
||||
coro = self.loop.create_datagram_endpoint(
|
||||
|
@ -1646,13 +1646,13 @@ class BaseEventLoopWithSelectorTests(test_utils.TestCase):
|
|||
sock = mock.Mock()
|
||||
sock.fileno.return_value = 10
|
||||
sock.accept.side_effect = OSError(errno.EMFILE, 'Too many open files')
|
||||
self.loop.remove_reader = mock.Mock()
|
||||
self.loop._remove_reader = mock.Mock()
|
||||
self.loop.call_later = mock.Mock()
|
||||
|
||||
self.loop._accept_connection(MyProto, sock)
|
||||
self.assertTrue(m_log.error.called)
|
||||
self.assertFalse(sock.close.called)
|
||||
self.loop.remove_reader.assert_called_with(10)
|
||||
self.loop._remove_reader.assert_called_with(10)
|
||||
self.loop.call_later.assert_called_with(constants.ACCEPT_RETRY_DELAY,
|
||||
# self.loop._start_serving
|
||||
mock.ANY,
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue