From: Serhiy Storchaka <storchaka@gmail.com> Date: Thu, 16 Apr 2015 08:54:14 +0000 (+0300) Subject: Backported tests from issue #20175. X-Git-Tag: v3.5.0a4~23^2 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=6a69466f6173adcebb1c6bb54c0e43b92d26eff7;p=python Backported tests from issue #20175. --- diff --git a/Lib/test/test_fileio.py b/Lib/test/test_fileio.py index c37482ed70..fe5da695a5 100644 --- a/Lib/test/test_fileio.py +++ b/Lib/test/test_fileio.py @@ -126,9 +126,9 @@ class AutoFileTests(unittest.TestCase): self.assertTrue(f.closed) def testMethods(self): - methods = ['fileno', 'isatty', 'read', 'readinto', - 'seek', 'tell', 'truncate', 'write', 'seekable', - 'readable', 'writable'] + methods = ['fileno', 'isatty', 'seekable', 'readable', 'writable', + 'read', 'readall', 'readline', 'readlines', + 'tell', 'truncate', 'flush'] self.f.close() self.assertTrue(self.f.closed) @@ -138,6 +138,15 @@ class AutoFileTests(unittest.TestCase): # should raise on closed file self.assertRaises(ValueError, method) + self.assertRaises(ValueError, self.f.readinto) # XXX should be TypeError? + self.assertRaises(ValueError, self.f.readinto, bytearray(1)) + self.assertRaises(ValueError, self.f.seek) + self.assertRaises(ValueError, self.f.seek, 0) + self.assertRaises(ValueError, self.f.write) + self.assertRaises(ValueError, self.f.write, b'') + self.assertRaises(TypeError, self.f.writelines) + self.assertRaises(ValueError, self.f.writelines, b'') + def testOpendir(self): # Issue 3703: opening a directory should fill the errno # Windows always returns "[Errno 13]: Permission denied diff --git a/Lib/test/test_io.py b/Lib/test/test_io.py index ea109acaa0..2fb1b1e24a 100644 --- a/Lib/test/test_io.py +++ b/Lib/test/test_io.py @@ -2087,6 +2087,17 @@ class TextIOWrapperTest(unittest.TestCase): self.assertRaises(TypeError, t.__init__, b, newline=42) self.assertRaises(ValueError, t.__init__, b, newline='xyzzy') + def test_uninitialized(self): + t = self.TextIOWrapper.__new__(self.TextIOWrapper) + del t + t = self.TextIOWrapper.__new__(self.TextIOWrapper) + self.assertRaises(Exception, repr, t) + self.assertRaisesRegex((ValueError, AttributeError), + 'uninitialized|has no attribute', + t.read, 0) + t.__init__(self.MockRawIO()) + self.assertEqual(t.read(0), '') + def test_non_text_encoding_codecs_are_rejected(self): # Ensure the constructor complains if passed a codec that isn't # marked as a text encoding