Beispiel #1
0
    def test_gets_archive_handler_by_ext(self, _isfile):
        tar_archive_handler = archive.extract_tarfile
        zip_archive_handler = archive.extract_zipfile
        _isfile.return_value = False

        for ext in ('tar', 'tar.gz', 'tgz', 'tar.bz2', 'tbz2', 'tbz'):
            handler = archive.get_archive_handler("somefile.{}".format(ext))
            msg = "handler for extension: {}".format(ext)
            self.assertEqual(handler, tar_archive_handler, msg)

        for ext in ('zip', 'jar'):
            handler = archive.get_archive_handler("somefile.{}".format(ext))
            msg = "handler for extension {}".format(ext)
            self.assertEqual(handler, zip_archive_handler, msg)
Beispiel #2
0
    def test_gets_archive_hander_by_filetype(self, _isfile, _istarfile,
                                             _iszipfile):
        tar_archive_handler = archive.extract_tarfile
        zip_archive_handler = archive.extract_zipfile
        _isfile.return_value = True

        _istarfile.return_value = True
        _iszipfile.return_value = False
        handler = archive.get_archive_handler("foo")
        self.assertEqual(handler, tar_archive_handler)

        _istarfile.return_value = False
        _iszipfile.return_value = True
        handler = archive.get_archive_handler("foo")
        self.assertEqual(handler, zip_archive_handler)
Beispiel #3
0
 def can_handle(self, source):
     url_parts = self.parse_url(source)
     if url_parts.scheme not in ('http', 'https', 'ftp', 'file'):
         return "Wrong source type"
     if get_archive_handler(self.base_url(source)):
         return True
     return False
 def can_handle(self, source):
     url_parts = self.parse_url(source)
     if url_parts.scheme not in ('http', 'https', 'ftp', 'file'):
         return "Wrong source type"
     if get_archive_handler(self.base_url(source)):
         return True
     return False
 def can_handle(self, source):
     url_parts = self.parse_url(source)
     if url_parts.scheme not in ('http', 'https', 'ftp', 'file'):
         # XXX: Why is this returning a boolean and a string? It's
         # doomed to fail since "bool(can_handle('foo://'))"  will be True.
         return "Wrong source type"
     if get_archive_handler(self.base_url(source)):
         return True
     return False
Beispiel #6
0
 def can_handle(self, source):
     url_parts = self.parse_url(source)
     if url_parts.scheme not in ('http', 'https', 'ftp', 'file'):
         # XXX: Why is this returning a boolean and a string? It's
         # doomed to fail since "bool(can_handle('foo://'))"  will be True.
         return "Wrong source type"
     if get_archive_handler(self.base_url(source)):
         return True
     return False