Skip to content

Commit 7ed7ce6

Browse files
committed
Issue #27040: Add loop.get_exception_handler method
1 parent 7bf36da commit 7ed7ce6

4 files changed

Lines changed: 12 additions & 0 deletions

File tree

Lib/asyncio/base_events.py

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1078,6 +1078,11 @@ def subprocess_exec(self, protocol_factory, program, *args,
10781078
logger.info('%s: %r' % (debug_log, transport))
10791079
return transport, protocol
10801080

1081+
def get_exception_handler(self):
1082+
"""Return an exception handler, or None if the default one is in use.
1083+
"""
1084+
return self._exception_handler
1085+
10811086
def set_exception_handler(self, handler):
10821087
"""Set handler as the new event loop exception handler.
10831088

Lib/asyncio/events.py

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -484,6 +484,9 @@ def get_task_factory(self):
484484

485485
# Error handlers.
486486

487+
def get_exception_handler(self):
488+
raise NotImplementedError
489+
487490
def set_exception_handler(self, handler):
488491
raise NotImplementedError
489492

Lib/test/test_asyncio/test_base_events.py

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -658,8 +658,10 @@ def run_loop():
658658
self.loop.set_debug(True)
659659
self.loop._process_events = mock.Mock()
660660

661+
self.assertIsNone(self.loop.get_exception_handler())
661662
mock_handler = mock.Mock()
662663
self.loop.set_exception_handler(mock_handler)
664+
self.assertIs(self.loop.get_exception_handler(), mock_handler)
663665
handle = run_loop()
664666
mock_handler.assert_called_with(self.loop, {
665667
'exception': MOCK_ANY,

Misc/NEWS

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -454,6 +454,8 @@ Library
454454
- Issue #26848: Fix asyncio/subprocess.communicate() to handle empty input.
455455
Patch by Jack O'Connor.
456456

457+
- Issue #27040: Add loop.get_exception_handler method
458+
457459
Documentation
458460
-------------
459461

0 commit comments

Comments
 (0)