def test_archive_require_complete_fail(self): test_archive_name = 'multiple-' + self.test_timestamp + '.tar.gz' # c.py does not exist and exception is expected with pytest.raises(FileNotFoundError) as ex: create_temp_archive(test_archive_name, self.test_dir, filenames=['*.json', '*.txt', 'a.py', 'c.py'], require_complete=True) assert "{'c.py'}" in str(ex) # ensure c.py is the only item not matched
def test_archive_require_complete(self): test_archive_name = 'multiple-' + self.test_timestamp + '.tar.gz' archive_path = create_temp_archive( test_archive_name, self.test_dir, filenames=['*.json', '*.txt', 'a.py'], require_complete=True) self.assertArchivedContent(archive_path, ['c.json', 'd.txt', 'a.py'])
def test_archive_with_subdirectories_no_filter(self): subdir_name = os.path.join(self.test_dir, 'subdir') os.makedirs(subdir_name) self._create_test_files(subdir_name) test_archive_name = 'subdir-' + self.test_timestamp + '.tar.gz' archive_path = create_temp_archive(archive_name=test_archive_name, source_dir=self.test_dir, recursive=True) self.assertArchivedFileCount(archive_path, 0)
def test_archive_with_subdirectories_and_filters(self): subdir_name = os.path.join(self.test_dir, 'subdir') os.makedirs(subdir_name) self._create_test_files(subdir_name) test_archive_name = 'subdir-' + self.test_timestamp + '.tar.gz' archive_path = create_temp_archive(archive_name=test_archive_name, source_dir=self.test_dir, filenames=['subdir/*.py'], recursive=True) self.assertArchivedFileCount(archive_path, 2) self.assertArchivedContent(archive_path, ['subdir/a.py', 'subdir/b.py'])
def test_archive_with_second_level_subdirectories(self): subdir_name = os.path.join(self.test_dir, 'subdir') os.makedirs(subdir_name) self._create_test_files(subdir_name) another_subdir_name = os.path.join(subdir_name, 'another.subdir') os.makedirs(another_subdir_name) self._create_test_files(another_subdir_name) test_archive_name = 'subdir-' + self.test_timestamp + '.tar.gz' archive_path = create_temp_archive(archive_name=test_archive_name, source_dir=self.test_dir, filenames=['*'], recursive=True) self.assertArchivedFileCount(archive_path, 15)
def test_archive_multiple_filters(self): test_archive_name = 'multiple-' + self.test_timestamp + '.tar.gz' archive_path = create_temp_archive(test_archive_name, self.test_dir, filenames=['*.json', '*.txt']) self.assertArchivedContent(archive_path, ['c.json', 'd.txt'])
def test_archive_by_excluded_sequence(self): test_archive_name = 'python-' + self.test_timestamp + '.tar.gz' archive_path = create_temp_archive(test_archive_name, self.test_dir, filenames=['*[!b].py']) self.assertArchivedContent(archive_path, ['a.py'])
def test_archive_by_sequence_wildcard(self): test_archive_name = 'python-' + self.test_timestamp + '.tar.gz' archive_path = create_temp_archive(test_archive_name, self.test_dir, filenames=['[ab].*']) self.assertArchivedContent(archive_path, ['a.py', 'b.py'])
def test_archive_by_filter(self): test_archive_name = 'python-' + self.test_timestamp + '.tar.gz' archive_path = create_temp_archive(test_archive_name, self.test_dir, filenames=['*.py']) self.assertArchivedContent(archive_path, ['a.py', 'b.py'])
def test_archive_no_filter(self): test_archive_name = 'all-' + self.test_timestamp + '.tar.gz' archive_path = create_temp_archive(test_archive_name, self.test_dir) self.assertArchivedFileCount(archive_path, 0)
def test_archive_all(self): test_archive_name = 'all-' + self.test_timestamp + '.tar.gz' archive_path = create_temp_archive(test_archive_name, self.test_dir, filenames=['*']) self.assertArchivedContent(archive_path, self.test_files)
def test_archive_nonexistent_filter(self): test_archive_name = 'empty-' + self.test_timestamp + '.tar.gz' archive_path = create_temp_archive(test_archive_name, self.test_dir, filenames=['*.yml']) self.assertArchivedContent(archive_path, [])
def test_archive_unexistent_extensions(self): test_archive_name = 'empty-' + self.test_timestamp + '.tar.gz' archive_path = create_temp_archive(test_archive_name, self.test_dir, ['*.yml']) self.assertArchivedContent(archive_path, [])