From: Serhiy Storchaka Date: Thu, 16 Apr 2015 08:56:35 +0000 (+0300) Subject: Backported tests from issue #20175. X-Git-Tag: v2.7.10rc1~35 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=abb7e6504291506fee695ad56a642d0dea6370e4;p=thirdparty%2FPython%2Fcpython.git Backported tests from issue #20175. --- diff --git a/Lib/test/test_fileio.py b/Lib/test/test_fileio.py index b45d79b16455..e21e47f9e885 100644 --- a/Lib/test/test_fileio.py +++ b/Lib/test/test_fileio.py @@ -125,9 +125,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'] if sys.platform.startswith('atheos'): methods.remove('truncate') @@ -139,6 +139,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 2914a805b527..bbc804b6a58a 100644 --- a/Lib/test/test_io.py +++ b/Lib/test/test_io.py @@ -1990,6 +1990,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.assertRaisesRegexp((ValueError, AttributeError), + 'uninitialized|has no attribute', + t.read, 0) + t.__init__(self.MockRawIO()) + self.assertEqual(t.read(0), u'') + def test_detach(self): r = self.BytesIO() b = self.BufferedWriter(r)