(self)
| 874 | |
| 875 | @gen_test |
| 876 | def test_iterator(self): |
| 877 | futures = [Future(), Future(), Future(), Future()] # type: List[Future[int]] |
| 878 | |
| 879 | self.finish_coroutines(0, futures) |
| 880 | |
| 881 | g = gen.WaitIterator(*futures) |
| 882 | |
| 883 | i = 0 |
| 884 | while not g.done(): |
| 885 | try: |
| 886 | r = yield g.next() |
| 887 | except ZeroDivisionError: |
| 888 | self.assertIs(g.current_future, futures[0], "exception future invalid") |
| 889 | else: |
| 890 | if i == 0: |
| 891 | self.assertEqual(r, 24, "iterator value incorrect") |
| 892 | self.assertEqual(g.current_index, 2, "wrong index") |
| 893 | elif i == 2: |
| 894 | self.assertEqual(r, 42, "iterator value incorrect") |
| 895 | self.assertEqual(g.current_index, 1, "wrong index") |
| 896 | elif i == 3: |
| 897 | self.assertEqual(r, 84, "iterator value incorrect") |
| 898 | self.assertEqual(g.current_index, 3, "wrong index") |
| 899 | i += 1 |
| 900 | |
| 901 | @gen_test |
| 902 | def test_iterator_async_await(self): |
nothing calls this directly
no test coverage detected