def test_download_can_specify_headers(self, urlopen_mock): response = MagicMock() response.read.return_value = b'' urlopen_mock.return_value = response headers = {'Accept-Language': 'fr'} download_file('http://geotrek.fr', '/tmp', headers=headers) request = urlopen_mock.call_args_list[0][0][0] self.assertEqual(request.headers, {'Accept-language': 'fr'})
def test_download_can_specify_headers(self, urlopen_mock): response = MagicMock() response.read.return_value = '' urlopen_mock.return_value = response headers = {'Accept-Language': 'fr'} download_file('http://geotrek.fr', '/tmp', headers=headers) request = urlopen_mock.call_args_list[0][0][0] self.assertEqual(request.headers, {'Accept-language': 'fr'})
def test_download_headers_are_filtered(self, urlopen_mock): response = MagicMock() response.read.return_value = '' urlopen_mock.return_value = response headers = {'Accept-LANGUAGE': 'fr', 'HOST': '127.0.0.1:8001', 'user-agent': 'curl'} download_file('http://geotrek.fr', '/tmp', headers=headers) request = urlopen_mock.call_args_list[0][0][0] self.assertEqual(request.headers, {'Accept-language': 'fr', 'User-agent': 'curl'})
def test_download_headers_are_filtered(self, urlopen_mock): response = MagicMock() response.read.return_value = b'' urlopen_mock.return_value = response headers = { 'Accept-LANGUAGE': 'fr', 'HOST': '127.0.0.1:8001', 'user-agent': 'curl' } download_file('http://geotrek.fr', '/tmp', headers=headers) request = urlopen_mock.call_args_list[0][0][0] self.assertEqual(request.headers, { 'Accept-language': 'fr', 'User-agent': 'curl' })
def download(request, url): downloads_path = request.registry.settings['convertit.downloads_path'] message = "Sorry, there was an error fetching the document. Reason: %s" try: downloaded_filepath = download_file(url, downloads_path) return downloaded_filepath except ValueError as e: raise HTTPBadRequest(message % str(e)) except urllib2.HTTPError as e: raise HTTPError(message % str(e), status_int=e.getcode()) except urllib2.URLError as e: raise HTTPBadRequest(message % str(e))
def download(request, url): downloads_path = request.registry.settings["convertit.downloads_path"] message = "Sorry, there was an error fetching the document. Reason: %s" try: downloaded_filepath = download_file(url, downloads_path, headers=request.headers) return downloaded_filepath except ValueError as e: log.error(message % str(e)) raise HTTPBadRequest(body=message % str(e), content_type="text/plain") except urllib2.HTTPError as e: log.error(message % str(e)) raise HTTPError(body=message % str(e), status_int=e.getcode(), content_type="text/plain") except urllib2.URLError as e: log.error(message % str(e)) raise HTTPBadRequest(body=message % str(e), content_type="text/plain")
def download(request, url): downloads_path = request.registry.settings['convertit.downloads_path'] message = "Sorry, there was an error fetching the document. Reason: %s" try: downloaded_filepath = download_file(url, downloads_path, headers=request.headers) return downloaded_filepath except ValueError as e: log.error(message % str(e)) raise HTTPBadRequest(body=message % str(e), content_type='text/plain') except urllib2.HTTPError as e: log.error(message % str(e)) raise HTTPError(body=message % str(e), status_int=e.getcode(), content_type='text/plain') except urllib2.URLError as e: log.error(message % str(e)) raise HTTPBadRequest(body=message % str(e), content_type='text/plain')