(self)
| 394 | |
| 395 | # Test exception propagation through sequence iterator |
| 396 | def test_exception_sequence(self): |
| 397 | class MySequenceClass(SequenceClass): |
| 398 | def __getitem__(self, i): |
| 399 | if i == 10: |
| 400 | raise RuntimeError |
| 401 | return SequenceClass.__getitem__(self, i) |
| 402 | res = [] |
| 403 | try: |
| 404 | for x in MySequenceClass(20): |
| 405 | res.append(x) |
| 406 | except RuntimeError: |
| 407 | self.assertEqual(res, list(range(10))) |
| 408 | else: |
| 409 | self.fail("should have raised RuntimeError") |
| 410 | |
| 411 | # Test for StopIteration from __getitem__ |
| 412 | def test_stop_sequence(self): |
nothing calls this directly
no test coverage detected