Chromium Code Reviews| Index: chrome/common/extensions/docs/server2/future_test.py |
| diff --git a/chrome/common/extensions/docs/server2/future_test.py b/chrome/common/extensions/docs/server2/future_test.py |
| index 1c188d1ccdf6f25e2dd4cfceb0cb7b749de1a743..db056c58d54e5c48a8729b2ceacfefbecb1026b0 100755 |
| --- a/chrome/common/extensions/docs/server2/future_test.py |
| +++ b/chrome/common/extensions/docs/server2/future_test.py |
| @@ -161,11 +161,12 @@ class FutureTest(unittest.TestCase): |
| def testThen(self): |
| def assertIs42(val): |
| - self.assertEquals(val, 42) |
| + self.assertEqual(val, 42) |
|
not at google - send to devlin
2014/08/05 18:47:18
assertEquals isn't a function, assertEqual is. how
ahernandez
2014/08/05 18:58:23
assertEquals is deprecated according to https://do
not at google - send to devlin
2014/08/05 20:01:25
not fussed. I'm constantly confused because gtest
|
| + return val |
| then = Future(value=42).Then(assertIs42) |
| # Shouldn't raise an error. |
| - then.Get() |
| + self.assertEqual(42, then.Get()) |
| # Test raising an error. |
| then = Future(value=41).Then(assertIs42) |
| @@ -184,7 +185,7 @@ class FutureTest(unittest.TestCase): |
| raise Exception |
| then = Future(callback=raiseValueError).Then(assertIs42, handle) |
| - self.assertEquals(then.Get(), 'Caught') |
| + self.assertEqual('Caught', then.Get()) |
| then = Future(callback=raiseException).Then(assertIs42, handle) |
| self.assertRaises(Exception, then.Get) |
| @@ -192,7 +193,7 @@ class FutureTest(unittest.TestCase): |
| addOne = lambda val: val + 1 |
| then = Future(value=40).Then(addOne).Then(addOne).Then(assertIs42) |
| # Shouldn't raise an error. |
| - then.Get() |
| + self.assertEqual(42, then.Get()) |
| # Test error in chain. |
| then = Future(value=40).Then(addOne).Then(assertIs42).Then(addOne) |
| @@ -216,6 +217,46 @@ class FutureTest(unittest.TestCase): |
| myHandle) |
| self.assertEquals(then.Get(), 10) |
| + def testThenResolvesReturnedFutures(self): |
| + def returnsFortyTwo(): |
| + return Future(value=42) |
| + def inc(x): |
| + return x + 1 |
| + def incFuture(x): |
| + return Future(value=x + 1) |
| + |
| + self.assertEqual(43, returnsFortyTwo().Then(inc).Get()) |
| + self.assertEqual(43, returnsFortyTwo().Then(incFuture).Get()) |
| + self.assertEqual(44, returnsFortyTwo().Then(inc).Then(inc).Get()) |
| + self.assertEqual(44, returnsFortyTwo().Then(inc).Then(incFuture).Get()) |
| + self.assertEqual(44, returnsFortyTwo().Then(incFuture).Then(inc).Get()) |
| + self.assertEqual( |
| + 44, returnsFortyTwo().Then(incFuture).Then(incFuture).Get()) |
| + |
| + # The same behaviour should apply to error handlers. |
| + def raisesSomething(): |
| + def boom(): raise ValueError |
| + return Future(callback=boom) |
| + def shouldNotHappen(_): |
| + raise AssertionError() |
| + def oops(error): |
| + return 'oops' |
| + def oopsFuture(error): |
| + return Future(value='oops') |
| + |
| + self.assertEqual( |
| + 'oops', raisesSomething().Then(shouldNotHappen, oops).Get()) |
| + self.assertEqual( |
| + 'oops', raisesSomething().Then(shouldNotHappen, oopsFuture).Get()) |
| + self.assertEqual( |
| + 'oops', |
| + raisesSomething().Then(shouldNotHappen, raisesSomething) |
| + .Then(shouldNotHappen, oops).Get()) |
| + self.assertEqual( |
| + 'oops', |
| + raisesSomething().Then(shouldNotHappen, raisesSomething) |
| + .Then(shouldNotHappen, oopsFuture).Get()) |
| + |
| if __name__ == '__main__': |
| unittest.main() |