Skip to content

Commit b341ef3

Browse files
Move some changes out to other PRs.
1 parent b253501 commit b341ef3

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

48 files changed

+180
-162
lines changed

Lib/test/test_asyncio/test_base_events.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1345,7 +1345,7 @@ def getaddrinfo_task(*args, **kwds):
13451345
with self.assertRaises(OSError) as cm:
13461346
self.loop.run_until_complete(coro)
13471347

1348-
self.assertStartsWith(str(cm.exception), 'Multiple exceptions: ')
1348+
self.assertTrue(str(cm.exception).startswith('Multiple exceptions: '))
13491349
self.assertTrue(m_socket.socket.return_value.close.called)
13501350

13511351
coro = self.loop.create_connection(

Lib/test/test_asyncio/test_events.py

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2184,7 +2184,7 @@ def test_subprocess_stderr(self):
21842184

21852185
transp.close()
21862186
self.assertEqual(b'OUT:test', proto.data[1])
2187-
self.assertStartsWith(proto.data[2], b'ERR:test')
2187+
self.assertTrue(proto.data[2].startswith(b'ERR:test'), proto.data[2])
21882188
self.assertEqual(0, proto.returncode)
21892189

21902190
@support.requires_subprocess()
@@ -2206,7 +2206,8 @@ def test_subprocess_stderr_redirect_to_stdout(self):
22062206

22072207
stdin.write(b'test')
22082208
self.loop.run_until_complete(proto.completed)
2209-
self.assertStartsWith(proto.data[1], b'OUT:testERR:test')
2209+
self.assertTrue(proto.data[1].startswith(b'OUT:testERR:test'),
2210+
proto.data[1])
22102211
self.assertEqual(b'', proto.data[2])
22112212

22122213
transp.close()

Lib/test/test_asyncio/test_futures.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -242,7 +242,7 @@ def test_uninitialized(self):
242242

243243
def test_future_cancel_message_getter(self):
244244
f = self._new_future(loop=self.loop)
245-
self.assertHasAttr(f, '_cancel_message')
245+
self.assertTrue(hasattr(f, '_cancel_message'))
246246
self.assertEqual(f._cancel_message, None)
247247

248248
f.cancel('my message')

Lib/test/test_asyncio/test_locks.py

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -27,11 +27,11 @@ class LockTests(unittest.IsolatedAsyncioTestCase):
2727

2828
async def test_repr(self):
2929
lock = asyncio.Lock()
30-
self.assertEndsWith(repr(lock), '[unlocked]>')
30+
self.assertTrue(repr(lock).endswith('[unlocked]>'))
3131
self.assertTrue(RGX_REPR.match(repr(lock)))
3232

3333
await lock.acquire()
34-
self.assertEndsWith(repr(lock), '[locked]>')
34+
self.assertTrue(repr(lock).endswith('[locked]>'))
3535
self.assertTrue(RGX_REPR.match(repr(lock)))
3636

3737
async def test_lock(self):
@@ -286,12 +286,12 @@ class EventTests(unittest.IsolatedAsyncioTestCase):
286286

287287
def test_repr(self):
288288
ev = asyncio.Event()
289-
self.assertEndsWith(repr(ev), '[unset]>')
289+
self.assertTrue(repr(ev).endswith('[unset]>'))
290290
match = RGX_REPR.match(repr(ev))
291291
self.assertEqual(match.group('extras'), 'unset')
292292

293293
ev.set()
294-
self.assertEndsWith(repr(ev), '[set]>')
294+
self.assertTrue(repr(ev).endswith('[set]>'))
295295
self.assertTrue(RGX_REPR.match(repr(ev)))
296296

297297
ev._waiters.append(mock.Mock())
@@ -916,11 +916,11 @@ def test_initial_value_zero(self):
916916

917917
async def test_repr(self):
918918
sem = asyncio.Semaphore()
919-
self.assertEndsWith(repr(sem), '[unlocked, value:1]>')
919+
self.assertTrue(repr(sem).endswith('[unlocked, value:1]>'))
920920
self.assertTrue(RGX_REPR.match(repr(sem)))
921921

922922
await sem.acquire()
923-
self.assertEndsWith(repr(sem), '[locked]>')
923+
self.assertTrue(repr(sem).endswith('[locked]>'))
924924
self.assertTrue('waiters' not in repr(sem))
925925
self.assertTrue(RGX_REPR.match(repr(sem)))
926926

Lib/test/test_asyncio/test_protocols.py

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ def test_base_protocol(self):
1919
self.assertIsNone(p.connection_lost(f))
2020
self.assertIsNone(p.pause_writing())
2121
self.assertIsNone(p.resume_writing())
22-
self.assertNotHasAttr(p, '__dict__')
22+
self.assertFalse(hasattr(p, '__dict__'))
2323

2424
def test_protocol(self):
2525
f = mock.Mock()
@@ -30,7 +30,7 @@ def test_protocol(self):
3030
self.assertIsNone(p.eof_received())
3131
self.assertIsNone(p.pause_writing())
3232
self.assertIsNone(p.resume_writing())
33-
self.assertNotHasAttr(p, '__dict__')
33+
self.assertFalse(hasattr(p, '__dict__'))
3434

3535
def test_buffered_protocol(self):
3636
f = mock.Mock()
@@ -41,7 +41,7 @@ def test_buffered_protocol(self):
4141
self.assertIsNone(p.buffer_updated(150))
4242
self.assertIsNone(p.pause_writing())
4343
self.assertIsNone(p.resume_writing())
44-
self.assertNotHasAttr(p, '__dict__')
44+
self.assertFalse(hasattr(p, '__dict__'))
4545

4646
def test_datagram_protocol(self):
4747
f = mock.Mock()
@@ -50,7 +50,7 @@ def test_datagram_protocol(self):
5050
self.assertIsNone(dp.connection_lost(f))
5151
self.assertIsNone(dp.error_received(f))
5252
self.assertIsNone(dp.datagram_received(f, f))
53-
self.assertNotHasAttr(dp, '__dict__')
53+
self.assertFalse(hasattr(dp, '__dict__'))
5454

5555
def test_subprocess_protocol(self):
5656
f = mock.Mock()
@@ -60,7 +60,7 @@ def test_subprocess_protocol(self):
6060
self.assertIsNone(sp.pipe_data_received(1, f))
6161
self.assertIsNone(sp.pipe_connection_lost(1, f))
6262
self.assertIsNone(sp.process_exited())
63-
self.assertNotHasAttr(sp, '__dict__')
63+
self.assertFalse(hasattr(sp, '__dict__'))
6464

6565

6666
if __name__ == '__main__':

Lib/test/test_asyncio/test_queues.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ async def _test_repr_or_str(self, fn, expect_id):
1818
appear in fn(Queue()).
1919
"""
2020
q = asyncio.Queue()
21-
self.assertStartsWith(fn(q), '<Queue')
21+
self.assertTrue(fn(q).startswith('<Queue'), fn(q))
2222
id_is_present = hex(id(q)) in fn(q)
2323
self.assertEqual(expect_id, id_is_present)
2424

Lib/test/test_asyncio/test_sock_lowlevel.py

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -110,7 +110,7 @@ def _basetest_sock_client_ops(self, httpd, sock):
110110
self.loop.run_until_complete(
111111
self.loop.sock_recv(sock, 1024))
112112
sock.close()
113-
self.assertStartsWith(data, b'HTTP/1.0 200 OK')
113+
self.assertTrue(data.startswith(b'HTTP/1.0 200 OK'))
114114

115115
def _basetest_sock_recv_into(self, httpd, sock):
116116
# same as _basetest_sock_client_ops, but using sock_recv_into
@@ -127,7 +127,7 @@ def _basetest_sock_recv_into(self, httpd, sock):
127127
self.loop.run_until_complete(
128128
self.loop.sock_recv_into(sock, buf[nbytes:]))
129129
sock.close()
130-
self.assertStartsWith(data, b'HTTP/1.0 200 OK')
130+
self.assertTrue(data.startswith(b'HTTP/1.0 200 OK'))
131131

132132
def test_sock_client_ops(self):
133133
with test_utils.run_test_server() as httpd:
@@ -150,7 +150,7 @@ async def _basetest_sock_recv_racing(self, httpd, sock):
150150
# consume data
151151
await self.loop.sock_recv(sock, 1024)
152152

153-
self.assertStartsWith(data, b'HTTP/1.0 200 OK')
153+
self.assertTrue(data.startswith(b'HTTP/1.0 200 OK'))
154154

155155
async def _basetest_sock_recv_into_racing(self, httpd, sock):
156156
sock.setblocking(False)
@@ -168,7 +168,7 @@ async def _basetest_sock_recv_into_racing(self, httpd, sock):
168168
nbytes = await self.loop.sock_recv_into(sock, buf[:1024])
169169
# consume data
170170
await self.loop.sock_recv_into(sock, buf[nbytes:])
171-
self.assertStartsWith(data, b'HTTP/1.0 200 OK')
171+
self.assertTrue(data.startswith(b'HTTP/1.0 200 OK'))
172172

173173
await task
174174

@@ -217,7 +217,7 @@ async def recv_all():
217217
sock.shutdown(socket.SHUT_WR)
218218
data = await task
219219
# ProactorEventLoop could deliver hello, so endswith is necessary
220-
self.assertEndsWith(data, b'world')
220+
self.assertTrue(data.endswith(b'world'))
221221

222222
# After the first connect attempt before the listener is ready,
223223
# the socket needs time to "recover" to make the next connect call.
@@ -298,7 +298,7 @@ async def _basetest_huge_content(self, address):
298298
data = await self.loop.sock_recv(sock, DATA_SIZE)
299299
# HTTP headers size is less than MTU,
300300
# they are sent by the first packet always
301-
self.assertStartsWith(data, b'HTTP/1.0 200 OK')
301+
self.assertTrue(data.startswith(b'HTTP/1.0 200 OK'))
302302
while data.find(b'\r\n\r\n') == -1:
303303
data += await self.loop.sock_recv(sock, DATA_SIZE)
304304
# Strip headers
@@ -351,7 +351,7 @@ async def _basetest_huge_content_recvinto(self, address):
351351
data = bytes(buf[:nbytes])
352352
# HTTP headers size is less than MTU,
353353
# they are sent by the first packet always
354-
self.assertStartsWith(data, b'HTTP/1.0 200 OK')
354+
self.assertTrue(data.startswith(b'HTTP/1.0 200 OK'))
355355
while data.find(b'\r\n\r\n') == -1:
356356
nbytes = await self.loop.sock_recv_into(sock, buf)
357357
data = bytes(buf[:nbytes])

Lib/test/test_asyncio/test_streams.py

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -50,7 +50,7 @@ def _basetest_open_connection(self, open_connection_fut):
5050
self.assertEqual(data, b'HTTP/1.0 200 OK\r\n')
5151
f = reader.read()
5252
data = self.loop.run_until_complete(f)
53-
self.assertEndsWith(data, b'\r\n\r\nTest message')
53+
self.assertTrue(data.endswith(b'\r\n\r\nTest message'))
5454
writer.close()
5555
self.assertEqual(messages, [])
5656

@@ -75,7 +75,7 @@ def _basetest_open_connection_no_loop_ssl(self, open_connection_fut):
7575
writer.write(b'GET / HTTP/1.0\r\n\r\n')
7676
f = reader.read()
7777
data = self.loop.run_until_complete(f)
78-
self.assertEndsWith(data, b'\r\n\r\nTest message')
78+
self.assertTrue(data.endswith(b'\r\n\r\nTest message'))
7979

8080
writer.close()
8181
self.assertEqual(messages, [])
@@ -1002,7 +1002,7 @@ def test_wait_closed_on_close(self):
10021002
self.assertEqual(data, b'HTTP/1.0 200 OK\r\n')
10031003
f = rd.read()
10041004
data = self.loop.run_until_complete(f)
1005-
self.assertEndsWith(data, b'\r\n\r\nTest message')
1005+
self.assertTrue(data.endswith(b'\r\n\r\nTest message'))
10061006
self.assertFalse(wr.is_closing())
10071007
wr.close()
10081008
self.assertTrue(wr.is_closing())
@@ -1028,7 +1028,7 @@ async def inner(httpd):
10281028
data = await rd.readline()
10291029
self.assertEqual(data, b'HTTP/1.0 200 OK\r\n')
10301030
data = await rd.read()
1031-
self.assertEndsWith(data, b'\r\n\r\nTest message')
1031+
self.assertTrue(data.endswith(b'\r\n\r\nTest message'))
10321032
wr.close()
10331033
await wr.wait_closed()
10341034

@@ -1048,7 +1048,7 @@ async def inner(httpd):
10481048
data = await rd.readline()
10491049
self.assertEqual(data, b'HTTP/1.0 200 OK\r\n')
10501050
data = await rd.read()
1051-
self.assertEndsWith(data, b'\r\n\r\nTest message')
1051+
self.assertTrue(data.endswith(b'\r\n\r\nTest message'))
10521052
wr.close()
10531053
with self.assertRaises(ConnectionResetError):
10541054
wr.write(b'data')
@@ -1089,12 +1089,12 @@ async def inner(httpd):
10891089
data = await rd.readline()
10901090
self.assertEqual(data, b'HTTP/1.0 200 OK\r\n')
10911091
data = await rd.read()
1092-
self.assertEndsWith(data, b'\r\n\r\nTest message')
1092+
self.assertTrue(data.endswith(b'\r\n\r\nTest message'))
10931093
with self.assertWarns(ResourceWarning) as cm:
10941094
del wr
10951095
gc.collect()
10961096
self.assertEqual(len(cm.warnings), 1)
1097-
self.assertStartsWith(str(cm.warnings[0].message), "unclosed <StreamWriter")
1097+
self.assertTrue(str(cm.warnings[0].message).startswith("unclosed <StreamWriter"))
10981098

10991099
messages = []
11001100
self.loop.set_exception_handler(lambda loop, ctx: messages.append(ctx))
@@ -1112,7 +1112,7 @@ async def inner(httpd):
11121112
data = await rd.readline()
11131113
self.assertEqual(data, b'HTTP/1.0 200 OK\r\n')
11141114
data = await rd.read()
1115-
self.assertEndsWith(data, b'\r\n\r\nTest message')
1115+
self.assertTrue(data.endswith(b'\r\n\r\nTest message'))
11161116

11171117
# Make "loop is closed" occur first before "del wr" for this test.
11181118
self.loop.stop()
@@ -1144,7 +1144,7 @@ async def inner(rd, wr):
11441144
del wr
11451145
gc.collect()
11461146
self.assertEqual(len(cm.warnings), 1)
1147-
self.assertStartsWith(str(cm.warnings[0].message), "unclosed <StreamWriter")
1147+
self.assertTrue(str(cm.warnings[0].message).startswith("unclosed <StreamWriter"))
11481148

11491149
async def outer():
11501150
srv = await asyncio.start_server(inner, socket_helper.HOSTv4, 0)

Lib/test/test_asyncio/test_tasks.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -110,7 +110,7 @@ def test_task_cancel_message_getter(self):
110110
async def coro():
111111
pass
112112
t = self.new_task(self.loop, coro())
113-
self.assertHasAttr(t, '_cancel_message')
113+
self.assertTrue(hasattr(t, '_cancel_message'))
114114
self.assertEqual(t._cancel_message, None)
115115

116116
t.cancel('my message')
@@ -3131,7 +3131,7 @@ def new_task(self, coro):
31313131
class GenericTaskTests(test_utils.TestCase):
31323132

31333133
def test_future_subclass(self):
3134-
self.assertIsSubclass(asyncio.Task, asyncio.Future)
3134+
self.assertTrue(issubclass(asyncio.Task, asyncio.Future))
31353135

31363136
@support.cpython_only
31373137
def test_asyncio_module_compiled(self):

Lib/test/test_asyncio/test_windows_utils.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -121,8 +121,8 @@ def test_popen(self):
121121
self.assertGreater(len(out), 0)
122122
self.assertGreater(len(err), 0)
123123
# allow for partial reads...
124-
self.assertStartsWith(msg.upper().rstrip(), out)
125-
self.assertStartsWith(b"stderr", err)
124+
self.assertTrue(msg.upper().rstrip().startswith(out))
125+
self.assertTrue(b"stderr".startswith(err))
126126

127127
# The context manager calls wait() and closes resources
128128
with p:

Lib/test/test_capi/test_abstract.py

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -274,7 +274,7 @@ def test_object_setattr(self):
274274

275275
# PyObject_SetAttr(obj, attr_name, NULL) removes the attribute
276276
xsetattr(obj, 'a', NULL)
277-
self.assertNotHasAttr(obj, 'a')
277+
self.assertFalse(hasattr(obj, 'a'))
278278
self.assertRaises(AttributeError, xsetattr, obj, 'b', NULL)
279279
self.assertRaises(RuntimeError, xsetattr, obj, 'evil', NULL)
280280

@@ -294,7 +294,7 @@ def test_object_setattrstring(self):
294294

295295
# PyObject_SetAttrString(obj, attr_name, NULL) removes the attribute
296296
setattrstring(obj, b'a', NULL)
297-
self.assertNotHasAttr(obj, 'a')
297+
self.assertFalse(hasattr(obj, 'a'))
298298
self.assertRaises(AttributeError, setattrstring, obj, b'b', NULL)
299299
self.assertRaises(RuntimeError, setattrstring, obj, b'evil', NULL)
300300

@@ -311,10 +311,10 @@ def test_object_delattr(self):
311311
obj.a = 1
312312
setattr(obj, '\U0001f40d', 2)
313313
xdelattr(obj, 'a')
314-
self.assertNotHasAttr(obj, 'a')
314+
self.assertFalse(hasattr(obj, 'a'))
315315
self.assertRaises(AttributeError, xdelattr, obj, 'b')
316316
xdelattr(obj, '\U0001f40d')
317-
self.assertNotHasAttr(obj, '\U0001f40d')
317+
self.assertFalse(hasattr(obj, '\U0001f40d'))
318318

319319
self.assertRaises(AttributeError, xdelattr, 42, 'numerator')
320320
self.assertRaises(RuntimeError, xdelattr, obj, 'evil')
@@ -328,10 +328,10 @@ def test_object_delattrstring(self):
328328
obj.a = 1
329329
setattr(obj, '\U0001f40d', 2)
330330
delattrstring(obj, b'a')
331-
self.assertNotHasAttr(obj, 'a')
331+
self.assertFalse(hasattr(obj, 'a'))
332332
self.assertRaises(AttributeError, delattrstring, obj, b'b')
333333
delattrstring(obj, '\U0001f40d'.encode())
334-
self.assertNotHasAttr(obj, '\U0001f40d')
334+
self.assertFalse(hasattr(obj, '\U0001f40d'))
335335

336336
self.assertRaises(AttributeError, delattrstring, 42, b'numerator')
337337
self.assertRaises(RuntimeError, delattrstring, obj, b'evil')

0 commit comments

Comments
 (0)