diff options
author | Antoine Pitrou <solipsis@pitrou.net> | 2012-07-29 17:02:46 (GMT) |
---|---|---|
committer | Antoine Pitrou <solipsis@pitrou.net> | 2012-07-29 17:02:46 (GMT) |
commit | bff5df0d1ca6c37a3454dd5dff5d587af27ab8be (patch) | |
tree | ca1a3ab5703fd2e2813499d02a573c1f9a96c0fa /Lib/test/test_io.py | |
parent | c02e1e65c45753dafc7ae1b6c0b120323b2a10b7 (diff) | |
download | cpython-bff5df0d1ca6c37a3454dd5dff5d587af27ab8be.zip cpython-bff5df0d1ca6c37a3454dd5dff5d587af27ab8be.tar.gz cpython-bff5df0d1ca6c37a3454dd5dff5d587af27ab8be.tar.bz2 |
Issue #15487: Add a __sizeof__ implementation for buffered I/O objects.
Patch by Serhiy Storchaka.
Diffstat (limited to 'Lib/test/test_io.py')
-rw-r--r-- | Lib/test/test_io.py | 22 |
1 files changed, 18 insertions, 4 deletions
diff --git a/Lib/test/test_io.py b/Lib/test/test_io.py index 72feff5..e4507e4 100644 --- a/Lib/test/test_io.py +++ b/Lib/test/test_io.py @@ -748,6 +748,20 @@ class CommonBufferedTests: buf.raw = x +class SizeofTest: + + @support.cpython_only + def test_sizeof(self): + bufsize1 = 4096 + bufsize2 = 8192 + rawio = self.MockRawIO() + bufio = self.tp(rawio, buffer_size=bufsize1) + size = sys.getsizeof(bufio) - bufsize1 + rawio = self.MockRawIO() + bufio = self.tp(rawio, buffer_size=bufsize2) + self.assertEqual(sys.getsizeof(bufio), size + bufsize2) + + class BufferedReaderTest(unittest.TestCase, CommonBufferedTests): read_mode = "rb" @@ -931,7 +945,7 @@ class BufferedReaderTest(unittest.TestCase, CommonBufferedTests): "failed for {}: {} != 0".format(n, rawio._extraneous_reads)) -class CBufferedReaderTest(BufferedReaderTest): +class CBufferedReaderTest(BufferedReaderTest, SizeofTest): tp = io.BufferedReader def test_constructor(self): @@ -1194,7 +1208,7 @@ class BufferedWriterTest(unittest.TestCase, CommonBufferedTests): self.tp(self.MockRawIO(), 8, 12) -class CBufferedWriterTest(BufferedWriterTest): +class CBufferedWriterTest(BufferedWriterTest, SizeofTest): tp = io.BufferedWriter def test_constructor(self): @@ -1582,8 +1596,8 @@ class BufferedRandomTest(BufferedReaderTest, BufferedWriterTest): f.flush() self.assertEqual(raw.getvalue(), b'1b\n2def\n3\n') - -class CBufferedRandomTest(CBufferedReaderTest, CBufferedWriterTest, BufferedRandomTest): +class CBufferedRandomTest(CBufferedReaderTest, CBufferedWriterTest, + BufferedRandomTest, SizeofTest): tp = io.BufferedRandom def test_constructor(self): |