aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/Lib/test
diff options
context:
space:
mode:
Diffstat (limited to 'Lib/test')
-rw-r--r--Lib/test/test_tarfile.py23
1 files changed, 23 insertions, 0 deletions
diff --git a/Lib/test/test_tarfile.py b/Lib/test/test_tarfile.py
index e8d322d20a5..2eda7fc4cea 100644
--- a/Lib/test/test_tarfile.py
+++ b/Lib/test/test_tarfile.py
@@ -100,6 +100,14 @@ class ReadTest(TarTest):
def tearDown(self):
self.tar.close()
+class StreamModeTest(ReadTest):
+
+ # Only needs to change how the tarfile is opened to set
+ # stream mode
+ def setUp(self):
+ self.tar = tarfile.open(self.tarname, mode=self.mode,
+ encoding="iso8859-1",
+ stream=True)
class UstarReadTest(ReadTest, unittest.TestCase):
@@ -852,6 +860,21 @@ class Bz2StreamReadTest(Bz2Test, StreamReadTest):
class LzmaStreamReadTest(LzmaTest, StreamReadTest):
pass
+class TarStreamModeReadTest(StreamModeTest, unittest.TestCase):
+
+ def test_stream_mode_no_cache(self):
+ for _ in self.tar:
+ pass
+ self.assertEqual(self.tar.members, [])
+
+class GzipStreamModeReadTest(GzipTest, TarStreamModeReadTest):
+ pass
+
+class Bz2StreamModeReadTest(Bz2Test, TarStreamModeReadTest):
+ pass
+
+class LzmaStreamModeReadTest(LzmaTest, TarStreamModeReadTest):
+ pass
class DetectReadTest(TarTest, unittest.TestCase):
def _testfunc_file(self, name, mode):