Add missing re import to PySDK arvfile module.
[arvados.git] / sdk / python / tests / test_stream.py
index 11ee69493c771d84012a2348b8ffb1eab7b483e5..15257fe31270e8d3614ba44e02637c3fbf7c3691 100644 (file)
@@ -9,7 +9,8 @@ import unittest
 import hashlib
 
 import arvados
-from arvados import StreamReader, StreamFileReader, Range
+from arvados import StreamReader, StreamFileReader
+from arvados._ranges import Range
 
 import arvados_testutil as tutil
 import run_test_server
@@ -145,6 +146,20 @@ class StreamFileReaderTestCase(unittest.TestCase):
         self.assertEqual('nametest', sfile.name)
         self.assertEqual('nametest', sfile.name())
 
+    def check_decompressed_name(self, filename, expect):
+        stream = tutil.MockStreamReader('.', '')
+        reader = StreamFileReader(stream, [Range(0, 0, 0)], filename)
+        self.assertEqual(expect, reader.decompressed_name())
+
+    def test_decompressed_name_uncompressed_file(self):
+        self.check_decompressed_name('test.log', 'test.log')
+
+    def test_decompressed_name_gzip_file(self):
+        self.check_decompressed_name('test.log.gz', 'test.log')
+
+    def test_decompressed_name_bz2_file(self):
+        self.check_decompressed_name('test.log.bz2', 'test.log')
+
     def check_decompression(self, compress_ext, compress_func):
         test_text = 'decompression\ntest\n'
         test_data = compress_func(test_text)