from __future__ import absolute_import, division, with_statement
import unittest
+import time
from tornado.testing import AsyncTestCase, LogTrapTestCase
except ZeroDivisionError:
pass
+ def test_subsequent_wait_calls(self):
+ """
+ This test makes sure that a second call to wait()
+ clears the first timeout.
+ """
+ self.io_loop.add_timeout(time.time() + 0.001, self.stop)
+ self.wait(timeout = 0.002)
+ self.io_loop.add_timeout(time.time() + 0.003, self.stop)
+ self.wait(timeout = 0.01)
class SetUpTearDownTest(unittest.TestCase):
def test_set_up_tear_down(self):
self.__running = False
self.__failure = None
self.__stop_args = None
+ self.__timeout = None
def setUp(self):
super(AsyncTestCase, self).setUp()
except Exception:
self.__failure = sys.exc_info()
self.stop()
- self.io_loop.add_timeout(time.time() + timeout, timeout_func)
+ if self.__timeout is not None:
+ self.io_loop.remove_timeout(self.__timeout)
+ self.__timeout = self.io_loop.add_timeout(time.time() + timeout, timeout_func)
while True:
self.__running = True
with NullContext():