def testTimeout(self): self.assertEquals(TIMEOUT_NEVER, Tasklet.get_current_timeout()) Tasklet.set_current_timeout(10) self.assertAlmostEqual(10.0, Tasklet.get_current_timeout(), places = 1) Tasklet.sleep(1.0) self.assertAlmostEqual(9.0, Tasklet.get_current_timeout(), places = 1) Tasklet.sleep(1.0) self.assertAlmostEqual(8.0, Tasklet.get_current_timeout(), places = 1) current = Tasklet.current() current.timeout = 10.0 self.assertAlmostEqual(10.0, current.timeout, places = 1) Tasklet.sleep(1.0) self.assertAlmostEqual(9.0, current.timeout, places = 1) current.timeout = TIMEOUT_NEVER self.assertEquals(TIMEOUT_NEVER, current.timeout)
def testTimeout(self): self.assertEquals(TIMEOUT_NEVER, Tasklet.get_current_timeout()) Tasklet.set_current_timeout(10) self.assertAlmostEqual(10.0, Tasklet.get_current_timeout(), places = 1) Tasklet.sleep(1.0) self.assertAlmostEqual(9.0, Tasklet.get_current_timeout(), places = 1) Tasklet.sleep(1.0) self.assertAlmostEqual(8.0, Tasklet.get_current_timeout(), places = 1) current = Tasklet.current() current.timeout = 10.0 self.assertAlmostEqual(10.0, current.timeout, places = 1) Tasklet.sleep(1.0) self.assertAlmostEqual(9.0, current.timeout, places = 1) current.timeout = TIMEOUT_NEVER self.assertEquals(TIMEOUT_NEVER, current.timeout)
def testPushPop3(self): self.assertEquals(TIMEOUT_NEVER, Timeout.current()) Tasklet.set_current_timeout(10.0) Timeout.push(5.0) self.assertAlmostEqual(5.0, Timeout.current(), places=1) Timeout.pop() self.assertAlmostEqual(10.0, Timeout.current(), places=1) Timeout.push(15.0) self.assertAlmostEqual(10.0, Timeout.current(), places=1) Timeout.pop() self.assertAlmostEqual(10.0, Timeout.current(), places=1) self.assertAlmostEqual(10.0, Tasklet.get_current_timeout(), places=1) Tasklet.set_current_timeout(TIMEOUT_NEVER)
def testPushPop3(self): self.assertEquals(TIMEOUT_NEVER, Timeout.current()) Tasklet.set_current_timeout(10.0) Timeout.push(5.0) self.assertAlmostEqual(5.0, Timeout.current(), places = 1) Timeout.pop() self.assertAlmostEqual(10.0, Timeout.current(), places = 1) Timeout.push(15.0) self.assertAlmostEqual(10.0, Timeout.current(), places = 1) Timeout.pop() self.assertAlmostEqual(10.0, Timeout.current(), places = 1) self.assertAlmostEqual(10.0, Tasklet.get_current_timeout(), places = 1) Tasklet.set_current_timeout(TIMEOUT_NEVER)
def current(cls): """Gets the current timeout for the current task in seconds. That is the number of seconds before the current task will timeout by raising a :class:`~concurrence.core.TimeoutError`. A timeout of TIMEOUT_NEVER indicates that there is no timeout for the current task.""" return Tasklet.get_current_timeout()