def test_get_media_response_with_file_object(self): request = self.factory.get('fake/path') tmp_file = SimpleUploadedFile(name='/tmp/file.txt', content=b'creativity takes courage') # Adding fake url, we don't care, we are not testing accel-redirect tmp_file.url = None response = get_media_response(request, tmp_file) self.assertEqual(response.status_code, status.HTTP_200_OK) self.assertIsInstance(response.content, bytes) self.assertEqual(response.content, b'creativity takes courage')
def download_url(self, name, url): validate = URLValidator() try: validate(url) except forms.ValidationError as _: raise return None parsed_url = urlparse(url) path = parsed_url[2].strip("/") name = os.path.basename(path) opener = urllib2.build_opener() opener.addheaders = [('User-agent', 'Mozilla/5.0')] ze_file = opener.open(url).read() file_obj = SimpleUploadedFile(name=name, content=ze_file, content_type=mimetypes.guess_type(name)) file_obj.url = url return file_obj