def test_capture_errors_on_error(self): dialog = MessageDialog() tester = ModalDialogTester(dialog.open) def raise_error(tester): try: with tester.capture_error(): # this error will appear in the console and get recorded 1 / 0 finally: tester.close() with self.assertRaises(ZeroDivisionError): alt_stderr = cStringIO.StringIO with silence_output(err=alt_stderr): tester.open_and_run(when_opened=raise_error) self.assertIn('ZeroDivisionError', alt_stderr)
def test_capture_errors_on_failure(self): dialog = MessageDialog() tester = ModalDialogTester(dialog.open) def failure(tester): try: with tester.capture_error(): # this failure will appear in the console and get recorded self.fail() finally: tester.close() with self.assertRaises(AssertionError): alt_stderr = io.StringIO with silence_output(err=alt_stderr): tester.open_and_run(when_opened=failure) self.assertIn('raise self.failureException(msg)', alt_stderr)
def test_capture_errors_on_failure(self): dialog = MessageDialog() tester = ModalDialogTester(dialog.open) def failure(tester): try: with tester.capture_error(): # this failure will appear in the console and get recorded self.fail() finally: tester.close() with self.assertRaises(AssertionError): alt_stderr = cStringIO.StringIO with silence_output(err=alt_stderr): tester.open_and_run(when_opened=failure) self.assertIn('raise self.failureException(msg)', alt_stderr)
def test_capture_errors_on_error(self): dialog = MessageDialog() tester = ModalDialogTester(dialog.open) def raise_error(tester): try: with tester.capture_error(): # this error will appear in the console and get recorded 1 / 0 finally: tester.close() with self.assertRaises(ZeroDivisionError): alt_stderr = io.StringIO with silence_output(err=alt_stderr): tester.open_and_run(when_opened=raise_error) self.assertIn('ZeroDivisionError', alt_stderr)