From 8d6e0d45882444cf528b10832811fa19613f184a Mon Sep 17 00:00:00 2001 From: Alexandr Shurigin Date: Thu, 22 May 2014 19:12:22 +0700 Subject: [1.7.x] Fixed #22681 -- Made TarArchive recognize leading directories properly. Backport of 083d285b82 from master --- tests/utils_tests/archives/leadpath_foobar.tar | Bin 0 -> 5632 bytes tests/utils_tests/archives/leadpath_foobar.tar.bz2 | Bin 0 -> 265 bytes tests/utils_tests/archives/leadpath_foobar.tar.gz | Bin 0 -> 265 bytes tests/utils_tests/archives/leadpath_foobar.zip | Bin 0 -> 1402 bytes tests/utils_tests/test_archive.py | 5 +++++ 5 files changed, 5 insertions(+) create mode 100644 tests/utils_tests/archives/leadpath_foobar.tar create mode 100644 tests/utils_tests/archives/leadpath_foobar.tar.bz2 create mode 100644 tests/utils_tests/archives/leadpath_foobar.tar.gz create mode 100644 tests/utils_tests/archives/leadpath_foobar.zip (limited to 'tests') diff --git a/tests/utils_tests/archives/leadpath_foobar.tar b/tests/utils_tests/archives/leadpath_foobar.tar new file mode 100644 index 0000000000..3ff38d72f5 Binary files /dev/null and b/tests/utils_tests/archives/leadpath_foobar.tar differ diff --git a/tests/utils_tests/archives/leadpath_foobar.tar.bz2 b/tests/utils_tests/archives/leadpath_foobar.tar.bz2 new file mode 100644 index 0000000000..15f47ca179 Binary files /dev/null and b/tests/utils_tests/archives/leadpath_foobar.tar.bz2 differ diff --git a/tests/utils_tests/archives/leadpath_foobar.tar.gz b/tests/utils_tests/archives/leadpath_foobar.tar.gz new file mode 100644 index 0000000000..7b5ba7eda4 Binary files /dev/null and b/tests/utils_tests/archives/leadpath_foobar.tar.gz differ diff --git a/tests/utils_tests/archives/leadpath_foobar.zip b/tests/utils_tests/archives/leadpath_foobar.zip new file mode 100644 index 0000000000..8437c1ac03 Binary files /dev/null and b/tests/utils_tests/archives/leadpath_foobar.zip differ diff --git a/tests/utils_tests/test_archive.py b/tests/utils_tests/test_archive.py index f00f25e855..6f1b66b14b 100644 --- a/tests/utils_tests/test_archive.py +++ b/tests/utils_tests/test_archive.py @@ -21,6 +21,7 @@ class ArchiveTester(object): self.tmpdir = tempfile.mkdtemp() self.addCleanup(shutil.rmtree, self.tmpdir) self.archive_path = os.path.join(TEST_DIR, self.archive) + self.archive_lead_path = os.path.join(TEST_DIR, "leadpath_%s" % self.archive) # Always start off in TEST_DIR. os.chdir(TEST_DIR) @@ -42,6 +43,10 @@ class ArchiveTester(object): extract(self.archive_path, self.tmpdir) self.check_files(self.tmpdir) + def test_extract_function_with_leadpath(self): + extract(self.archive_lead_path, self.tmpdir) + self.check_files(self.tmpdir) + def test_extract_function_no_to_path(self): os.chdir(self.tmpdir) extract(self.archive_path) -- cgit v1.3