def _download_verify_patches(self): # Downloads & verifies all patches log.debug('Downloading patches') total = 0 if len(self.patch_data) > 3: percent_each = 100 / len(self.patch_data) else: percent_each = None for p in self.patch_data: fd = FileDownloader(p[u'patch_name'], p[u'patch_urls'], p[u'patch_hash'], self.verify) data = fd.download_verify_return() if data is not None: self.patch_binary_data.append(data) # Gathering info to send in signal if percent_each is not None: total += percent_each done = total else: done = '...' progress_signal.send(info=u'Downloading patches', percent=str(done)) else: progress_signal.send(info=u'Failed to download patches', percent=u'...') return False progress_signal.send(info=u'Download Complete', percent=u'100') return True
def test_bad_url(): with ChDir('tests'): fd = FileDownloader(FILENAME, u'bad url', u'bad hash') binary_data = fd.download_verify_return() assert binary_data is None
def test_url_with_spaces(): with ChDir(u'tests'): fd = FileDownloader(FILENAME_WITH_SPACES, URL, FILE_HASH) binary_data = fd.download_verify_return() assert binary_data is not None
def test_download_return_fail(): with ChDir(u'tests'): fd = FileDownloader(FILENAME, URL, u'JKFEIFJILEFJ983NKFNKL') binary_data = fd.download_verify_return() assert binary_data is None
def test_download_return(): with ChDir(u'tests'): fd = FileDownloader(FILENAME, URL, FILE_HASH) binary_data = fd.download_verify_return() assert binary_data is not None