diff options
author | Barry Warsaw <barry@python.org> | 2008-11-20 20:14:50 (GMT) |
---|---|---|
committer | Barry Warsaw <barry@python.org> | 2008-11-20 20:14:50 (GMT) |
commit | 40e8246f6a5d659e09b27c4fc0803a0f99e5bb1c (patch) | |
tree | 2d934f969b56f06f2333528d1c2d92dde75e8f2e /Lib/test/test_io.py | |
parent | 91cc8fb92b5d59d26cfca0167b32f6f25b453849 (diff) | |
download | cpython-40e8246f6a5d659e09b27c4fc0803a0f99e5bb1c.zip cpython-40e8246f6a5d659e09b27c4fc0803a0f99e5bb1c.tar.gz cpython-40e8246f6a5d659e09b27c4fc0803a0f99e5bb1c.tar.bz2 |
Fix for bug 4362 "FileIO object in io module"; Patch by amaury.forgeotdarc.
Diffstat (limited to 'Lib/test/test_io.py')
-rw-r--r-- | Lib/test/test_io.py | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/Lib/test/test_io.py b/Lib/test/test_io.py index 83d363d..79cfd8a 100644 --- a/Lib/test/test_io.py +++ b/Lib/test/test_io.py @@ -1249,6 +1249,9 @@ class TextIOWrapperTest(unittest.TestCase): class MiscIOTest(unittest.TestCase): + def tearDown(self): + support.unlink(support.TESTFN) + def testImport__all__(self): for name in io.__all__: obj = getattr(io, name, None) @@ -1261,6 +1264,34 @@ class MiscIOTest(unittest.TestCase): self.assert_(issubclass(obj, io.IOBase)) + def test_attributes(self): + f = io.open(support.TESTFN, "wb", buffering=0) + self.assertEquals(f.mode, "w") + f.close() + + f = io.open(support.TESTFN, "U") + self.assertEquals(f.name, support.TESTFN) + self.assertEquals(f.buffer.name, support.TESTFN) + self.assertEquals(f.buffer.raw.name, support.TESTFN) + self.assertEquals(f.mode, "U") + self.assertEquals(f.buffer.mode, "r") + self.assertEquals(f.buffer.raw.mode, "r") + f.close() + + f = io.open(support.TESTFN, "w+") + self.assertEquals(f.mode, "w+") + self.assertEquals(f.buffer.mode, "r+") # Does it really matter? + self.assertEquals(f.buffer.raw.mode, "r+") + + g = io.open(f.fileno(), "wb", closefd=False) + self.assertEquals(g.mode, "w") + self.assertEquals(g.raw.mode, "w") + self.assertEquals(g.name, f.fileno()) + self.assertEquals(g.raw.name, f.fileno()) + f.close() + g.close() + + def test_main(): support.run_unittest(IOTest, BytesIOTest, StringIOTest, BufferedReaderTest, BufferedWriterTest, |