示例#1
0
 def test_wait_exception(self):
     fut = Future()
     def set_result():
         gruvi.sleep(0.1)
         fut.set_exception(RuntimeError)
     fib = gruvi.Fiber(set_result)
     fib.start()
     self.assertEqual(fut.exception(), RuntimeError)
示例#2
0
    def test_wait_exception(self):
        fut = Future()

        def set_result():
            gruvi.sleep(0.1)
            fut.set_exception(RuntimeError)

        fib = gruvi.Fiber(set_result)
        fib.start()
        self.assertEqual(fut.exception(), RuntimeError)
示例#3
0
 def test_set_exception_twice(self):
     fut = Future()
     fut.set_exception(RuntimeError)
     self.assertEqual(fut.exception(), RuntimeError)
     fut.set_exception(ValueError)
     self.assertEqual(fut.exception(), RuntimeError)
示例#4
0
 def test_exception(self):
     fut = Future()
     fut.set_exception(ValueError())
     self.assertIsInstance(fut.exception(), ValueError)
     self.assertRaises(ValueError, fut.result)
示例#5
0
 def test_result(self):
     fut = Future()
     fut.set_result(10)
     self.assertEqual(fut.result(), 10)
     self.assertIsNone(fut.exception())
     self.assertEqual(fut.result(), 10)
示例#6
0
 def test_set_exception_twice(self):
     fut = Future()
     fut.set_exception(RuntimeError)
     self.assertEqual(fut.exception(), RuntimeError)
     fut.set_exception(ValueError)
     self.assertEqual(fut.exception(), RuntimeError)
示例#7
0
 def test_exception(self):
     fut = Future()
     fut.set_exception(ValueError())
     self.assertIsInstance(fut.exception(), ValueError)
     self.assertRaises(ValueError, fut.result)
示例#8
0
 def test_result(self):
     fut = Future()
     fut.set_result(10)
     self.assertEqual(fut.result(), 10)
     self.assertIsNone(fut.exception())
     self.assertEqual(fut.result(), 10)