(self, func, tool, recorders)
| 765 | class CheckEvents(MonitoringTestBase, unittest.TestCase): |
| 766 | |
| 767 | def get_events(self, func, tool, recorders): |
| 768 | try: |
| 769 | self.assertEqual(sys.monitoring._all_events(), {}) |
| 770 | event_list = [] |
| 771 | all_events = 0 |
| 772 | for recorder in recorders: |
| 773 | ev = recorder.event_type |
| 774 | sys.monitoring.register_callback(tool, ev, recorder(event_list)) |
| 775 | all_events |= ev |
| 776 | sys.monitoring.set_events(tool, all_events) |
| 777 | func() |
| 778 | sys.monitoring.set_events(tool, 0) |
| 779 | for recorder in recorders: |
| 780 | sys.monitoring.register_callback(tool, recorder.event_type, None) |
| 781 | return event_list |
| 782 | finally: |
| 783 | sys.monitoring.set_events(tool, 0) |
| 784 | for recorder in recorders: |
| 785 | sys.monitoring.register_callback(tool, recorder.event_type, None) |
| 786 | |
| 787 | def check_events(self, func, expected, tool=TEST_TOOL, recorders=(ExceptionRecorder,)): |
| 788 | events = self.get_events(func, tool, recorders) |
no test coverage detected