fix downloads w/o content-length

Fixes: https://pagure.io/koji/issue/982
This commit is contained in:
Tomas Kopecek 2018-06-25 10:53:01 +02:00
parent ad61fdee12
commit 98b83eff69
3 changed files with 14 additions and 22 deletions

View file

@ -84,18 +84,18 @@ class TestDownloadFile(unittest.TestCase):
response = mock.MagicMock()
self.requests_get.return_value = response
response.headers.get.return_value = None # content-length
response.content = 'abcdef'
response.iter_content.return_value = ['a' * 65536, 'b' * 65536]
rv = download_file("http://url", self.filename)
actual = self.stdout.getvalue()
expected = 'Downloading: %s\n[====================================] 100%% 6.00 B\r\n' % self.filename
expected = 'Downloading: %s\n[ ] ???%% 64.00 KiB\r[ ] ???%% 128.00 KiB\r[====================================] 100%% 128.00 KiB\r\n' % self.filename
self.assertMultiLineEqual(actual, expected)
self.requests_get.assert_called_once()
m_open.assert_called_once()
response.headers.get.assert_called_once()
response.iter_content.assert_not_called()
response.iter_content.assert_called_once()
self.assertIsNone(rv)
@ -148,7 +148,7 @@ class TestDownloadProgress(unittest.TestCase):
_download_progress(1024 * 1024 * 1024 * 35, 1024 * 1024 * 1024 * 30)
_download_progress(318921, 318921)
actual = self.stdout.getvalue()
expected = '[ ] 0% 0.00 B\r' + \
expected = '[ ] ???% 0.00 B\r' + \
'[ ] 1% 1.00 KiB\r' + \
'[================= ] 47% 11.00 MiB\r' + \
'[============================== ] 85% 30.00 GiB\r' + \