Quellcode durchsuchen

Add test reproducing issue creating tarfil stream with unicode
character.

Jelmer Vernooij vor 2 Jahren
Ursprung
Commit
c6c1bc8b46
1 geänderte Dateien mit 13 neuen und 0 gelöschten Zeilen
  1. 13 0
      dulwich/tests/test_archive.py

+ 13 - 0
dulwich/tests/test_archive.py

@@ -73,6 +73,19 @@ class ArchiveTests(TestCase):
         self.addCleanup(tf.close)
         self.assertEqual(["somename"], tf.getnames())
 
+    def test_unicode(self):
+        store = MemoryObjectStore()
+        b1 = Blob.from_string(b"somedata")
+        store.add_object(b1)
+        t1 = Tree()
+        t1.add("ő".encode('utf-8'), 0o100644, b1.id)
+        store.add_object(t1)
+        stream = b"".join(tar_stream(store, t1, mtime=0))
+        BytesIO(stream)
+        tf = tarfile.TarFile(fileobj=stream)
+        self.addCleanup(tf.close)
+        self.assertEqual(["ő"], tf.getnames())
+
     def test_prefix(self):
         stream = self._get_example_tar_stream(mtime=0, prefix=b"blah")
         tf = tarfile.TarFile(fileobj=stream)