Skip to content

Commit e51959b

Browse files
committed
Fix epoll test cleanup on Python 3.15
1 parent e8efea4 commit e51959b

1 file changed

Lines changed: 5 additions & 2 deletions

File tree

‎tests/test_sockets.py‎

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
import asyncio
2+
import os
23
import pickle
34
import select
45
import socket
@@ -272,7 +273,9 @@ def test_socket_sync_remove(self):
272273
# See https://github.com/MagicStack/uvloop/issues/61 for details
273274

274275
sock = socket.socket()
275-
epoll = select.epoll.fromfd(self.loop._get_backend_id())
276+
# Keep a separate descriptor for the backend epoll instance. The loop
277+
# owns its descriptor and closes it when the loop is closed.
278+
epoll = select.epoll.fromfd(os.dup(self.loop._get_backend_id()))
276279

277280
try:
278281
cb = lambda: None
@@ -288,8 +291,8 @@ def test_socket_sync_remove(self):
288291

289292
finally:
290293
sock.close()
291-
self.loop.close()
292294
epoll.close()
295+
self.loop.close()
293296

294297
def test_add_reader_or_writer_transport_fd(self):
295298
def assert_raises():

0 commit comments

Comments
 (0)