[3.9] bpo-23819: Fix asyncio tests on python optimized mode (GH-30195) (GH-30265)

(cherry picked from commit a23ab7b6d8)

Co-authored-by: Kumar Aditya <59607654+kumaraditya303@users.noreply.github.com>
This commit is contained in:
Miss Islington (bot) 2021-12-26 03:54:18 -08:00 committed by GitHub
parent f1f54c8fb9
commit 07229054a1
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
5 changed files with 9 additions and 4 deletions

View file

@ -1290,8 +1290,8 @@ class BaseEventLoop(events.AbstractEventLoop):
addr_infos = {} # Using order preserving dict
for idx, addr in ((0, local_addr), (1, remote_addr)):
if addr is not None:
assert isinstance(addr, tuple) and len(addr) == 2, (
'2-tuple is expected')
if not (isinstance(addr, tuple) and len(addr) == 2):
raise TypeError('2-tuple is expected')
infos = await self._ensure_resolved(
addr, family=family, type=socket.SOCK_DGRAM,

View file

@ -1592,11 +1592,11 @@ class BaseEventLoopWithSelectorTests(test_utils.TestCase):
coro = self.loop.create_datagram_endpoint(
MyDatagramProto, local_addr='localhost')
self.assertRaises(
AssertionError, self.loop.run_until_complete, coro)
TypeError, self.loop.run_until_complete, coro)
coro = self.loop.create_datagram_endpoint(
MyDatagramProto, local_addr=('localhost', 1, 2, 3))
self.assertRaises(
AssertionError, self.loop.run_until_complete, coro)
TypeError, self.loop.run_until_complete, coro)
def test_create_datagram_endpoint_connect_err(self):
self.loop.sock_connect = mock.Mock()

View file

@ -72,6 +72,7 @@ class ProactorSocketTransportTests(test_utils.TestCase):
self.loop._proactor.recv.assert_called_with(self.sock, 32768)
self.protocol.data_received.assert_called_with(b'data')
@unittest.skipIf(sys.flags.optimize, "Assertions are disabled in optimized mode")
def test_loop_reading_no_data(self):
res = self.loop.create_future()
res.set_result(b'')
@ -853,6 +854,7 @@ class BaseProactorEventLoopTests(test_utils.TestCase):
self.protocol.datagram_received.assert_called_with(b'data', ('127.0.0.1', 12068))
close_transport(tr)
@unittest.skipIf(sys.flags.optimize, "Assertions are disabled in optimized mode")
def test_datagram_loop_reading_no_data(self):
res = self.loop.create_future()
res.set_result((b'', ('127.0.0.1', 12068)))

View file

@ -1,5 +1,6 @@
"""Tests for selector_events.py"""
import sys
import selectors
import socket
import unittest
@ -804,6 +805,7 @@ class SelectorSocketTransportTests(test_utils.TestCase):
self.sock.close.assert_called_with()
self.protocol.connection_lost.assert_called_with(None)
@unittest.skipIf(sys.flags.optimize, "Assertions are disabled in optimized mode")
def test_write_ready_no_data(self):
transport = self.socket_transport()
# This is an internal error.

View file

@ -0,0 +1 @@
Fixed :mod:`asyncio` tests in python optimized mode. Patch by Kumar Aditya.