diff options
| author | Serhiy Storchaka <storchaka@gmail.com> | 2017-04-19 19:09:56 (GMT) |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2017-04-19 19:09:56 (GMT) |
| commit | e63af29c87b44bb7ada5783cd0ff6ee6d4f9c17c (patch) | |
| tree | 4397f11f7bce21bf7e5be3dd8185eb5bf2d78c87 /Lib/test/test_io.py | |
| parent | 49a905958ffc2fcd5d1d1a293ae453d45deeb884 (diff) | |
| download | cpython-e63af29c87b44bb7ada5783cd0ff6ee6d4f9c17c.zip cpython-e63af29c87b44bb7ada5783cd0ff6ee6d4f9c17c.tar.gz cpython-e63af29c87b44bb7ada5783cd0ff6ee6d4f9c17c.tar.bz2 | |
[3.5] bpo-30061: Check if PyObject_Size()/PySequence_Size()/PyMapping_Size() (GH-1096) (GH-1180) (#1182)
raised an error.
(cherry picked from commit bf623ae8843dc30b28c574bec8d29fc14be59d86)
(cherry picked from commit 680fea4067537a9b9c79aadd44a3a19e83cd2dbf)
Diffstat (limited to 'Lib/test/test_io.py')
| -rw-r--r-- | Lib/test/test_io.py | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/Lib/test/test_io.py b/Lib/test/test_io.py index ff23db5..b8937c5 100644 --- a/Lib/test/test_io.py +++ b/Lib/test/test_io.py @@ -536,6 +536,22 @@ class IOTest(unittest.TestCase): with self.open(support.TESTFN, "r") as f: self.assertRaises(TypeError, f.readline, 5.3) + def test_readline_nonsizeable(self): + # Issue #30061 + # Crash when readline() returns an object without __len__ + class R(self.IOBase): + def readline(self): + return None + self.assertRaises((TypeError, StopIteration), next, R()) + + def test_next_nonsizeable(self): + # Issue #30061 + # Crash when __next__() returns an object without __len__ + class R(self.IOBase): + def __next__(self): + return None + self.assertRaises(TypeError, R().readlines, 1) + def test_raw_bytes_io(self): f = self.BytesIO() self.write_ops(f) |
