except ZeroDivisionError:
pass
+class SetUpTearDownTest(unittest.TestCase):
+ def test_set_up_tear_down(self):
+ """
+ This test makes sure that AsyncTestCase calls super methods for
+ setUp and tearDown.
+
+ InheritBoth is a subclass of both AsyncTestCase and
+ SetUpTearDown, with the ordering so that the super of
+ AsyncTestCase will be SetUpTearDown.
+ """
+ events = []
+ result = unittest.TestResult()
+
+ class SetUpTearDown(unittest.TestCase):
+ def setUp(self):
+ events.append('setUp')
+
+ def tearDown(self):
+ events.append('tearDown')
+
+ class InheritBoth(AsyncTestCase, SetUpTearDown):
+ def test(self):
+ events.append('test')
+
+ InheritBoth('test').run(result)
+ expected = ['setUp', 'test', 'tearDown']
+ self.assertEqual(expected, events)
+
if __name__ == '__main__':
- unittest.main
+ unittest.main()
logging.debug("error closing fd %d", fd, exc_info=True)
self.io_loop._waker_reader.close()
self.io_loop._waker_writer.close()
+ super(AsyncTestCase, self).tearDown()
def get_new_ioloop(self):
'''Creates a new IOLoop for this test. May be overridden in