def test_admin_demomodel_validate(webapp, admin_user, demomodel): url = reverse('admin:demoapp_demomodel_change', args=[demomodel.pk]) res = webapp.get(url, user=admin_user) res.form['sender'].force_value('invalid_strategy_classname') res = res.form.submit() assert 'Select a valid choice' in res.context['adminform'].form.errors[ 'sender'][0]
def test_admin_demo_multiple_model_edit(webapp, admin_user, demo_multiplecustom_model): demo_multiplecustom_model.sender = [Strategy, Strategy1] demo_multiplecustom_model.save() url = reverse('admin:demoapp_demomultiplecustommodel_change', args=[demo_multiplecustom_model.pk]) res = webapp.get(url, user=admin_user) assert res.context['adminform'].form.fields['sender'].choices == [ ('demoproject.demoapp.models.Strategy', 'demoproject.demoapp.models.Strategy'), ('demoproject.demoapp.models.Strategy1', 'demoproject.demoapp.models.Strategy1') ] res.form['sender'] = [ 'demoproject.demoapp.models.Strategy', 'demoproject.demoapp.models.Strategy1' ] res.form.submit().follow() res = webapp.get(url, user=admin_user) assert res.context['adminform'].form.fields['sender'].choices == [ ('demoproject.demoapp.models.Strategy', 'demoproject.demoapp.models.Strategy'), ('demoproject.demoapp.models.Strategy1', 'demoproject.demoapp.models.Strategy1') ]
def test_admin_demomodel_validate(webapp, admin_user, demomodel): url = reverse('admin:demoapp_demomodel_change', args=[demomodel.pk]) res = webapp.get(url, user=admin_user) res.form['sender'].force_value('invalid_strategy_classname') res = res.form.submit() assert 'Select a valid choice' in res.context[ 'adminform'].form.errors['sender'][0]
def test_admin_demomodel_edit(webapp, admin_user, demomodel): url = reverse('admin:demoapp_demomodel_change', args=[demomodel.pk]) res = webapp.get(url, user=admin_user) res.form['sender'] = 'demoproject.demoapp.models.Sender2' res.form.submit().follow() assert DemoModel.objects.filter( sender='demoproject.demoapp.models.Sender2').count() == 1
def test_not_modified_download_response(self): """'storage:static_path' sends not modified response if unmodified.""" setup_file("1.txt") url = reverse("storage:static_path", kwargs={"path": "1.txt"}) year = datetime.date.today().year + 4 response = self.client.get( url, HTTP_IF_MODIFIED_SINCE=f"Sat, 29 Oct {year} 19:43:31 GMT", ) self.assertTrue(isinstance(response, HttpResponseNotModified))
def test_download_response(self): """'static_path' serves 'fixtures/hello-world.txt'.""" url = reverse("path:static_path") response = self.client.get(url) assert_download_response( self, response, content="Hello world!\n", basename="hello-world.txt", mime_type="text/plain", )
def test_download_response(self): """'dynamic_path' serves 'fixtures/{path}'.""" url = reverse("path:dynamic_path", kwargs={"path": "hello-world.txt"}) response = self.client.get(url) assert_download_response( self, response, content="Hello world!\n", basename="hello-world.txt", mime_type="text/plain", )
def test_download_response(self): """'virtual:text' serves 'hello-world.txt' from unicode.""" url = reverse("virtual:text") response = self.client.get(url) assert_download_response( self, response, content="Hello world!\n", basename="hello-world.txt", mime_type="text/plain", )
def test_download_response(self): """'simple_url' serves 'hello-world.txt' from Github.""" url = reverse("http:simple_url") response = self.client.get(url) assert_download_response( self, response, content="Hello world!\n", basename="hello-world.txt", mime_type="text/plain", )
def test_download_response(self): "'deserialized_basename' streams Document.file with custom basename." setup_document() url = reverse("object:deserialized_basename", kwargs={"slug": slug}) response = self.client.get(url) assert_download_response( self, response, content=file_content, basename=basename, mime_type="text/plain", )
def test_response(self): """'lighttpd:optimized_by_middleware' returns X-Sendfile response.""" setup_file() url = reverse("lighttpd:optimized_by_middleware") response = self.client.get(url) assert_x_sendfile( self, response, content_type="text/plain; charset=utf-8", basename="hello-world.txt", file_path="/lighttpd-optimized-by-middleware/hello-world.txt", )
def test_download_response(self): """'storage:static_path' streams file by path.""" setup_file("1.txt") url = reverse("storage:static_path", kwargs={"path": "1.txt"}) response = self.client.get(url) assert_download_response( self, response, content=file_content, basename="1.txt", mime_type="text/plain", )
def test_response(self): """'apache:optimized_by_decorator' returns X-Sendfile response.""" setup_file() url = reverse("apache:optimized_by_decorator") response = self.client.get(url) assert_x_sendfile( self, response, content_type="text/plain; charset=utf-8", basename="hello-world.txt", file_path="/apache-optimized-by-decorator/hello-world.txt", )
def test_download_response(self): "'inline_file_view' streams Document.file inline." setup_document() url = reverse("object:inline_file", kwargs={"slug": slug}) response = self.client.get(url) assert_download_response( self, response, content=file_content, mime_type="text/plain", attachment=False, )
def test_download_response(self): """'another_file' streams Document.another_file.""" setup_document() url = reverse("object:another_file", kwargs={"slug": slug}) response = self.client.get(url) assert_download_response( self, response, content=another_content, basename=another_name, mime_type="text/plain", )
def test_modified_since_download_response(self): """'storage:static_path' streams file if modified.""" setup_file("1.txt") url = reverse("storage:static_path", kwargs={"path": "1.txt"}) response = self.client.get( url, HTTP_IF_MODIFIED_SINCE="Sat, 29 Oct 1980 19:43:31 GMT" ) assert_download_response( self, response, content=file_content, basename="1.txt", mime_type="text/plain", )
def test_response(self): """'nginx:optimized_by_decorator' returns X-Accel response.""" setup_file() url = reverse("nginx:optimized_by_decorator") response = self.client.get(url) assert_x_accel_redirect( self, response, content_type="text/plain; charset=utf-8", charset="utf-8", basename="hello-world.txt", redirect_url="/nginx-optimized-by-decorator/hello-world.txt", expires=None, with_buffering=None, limit_rate=None, )
def test_admin_demo_multiple_model_edit(webapp, admin_user, demo_multiplecustom_model): demo_multiplecustom_model.sender = [Strategy, Strategy1] demo_multiplecustom_model.save() url = reverse('admin:demoapp_demomultiplecustommodel_change', args=[demo_multiplecustom_model.pk]) res = webapp.get(url, user=admin_user) assert res.context['adminform'].form.fields['sender'].choices == [('demoproject.demoapp.models.Strategy', 'demoproject.demoapp.models.Strategy'), ('demoproject.demoapp.models.Strategy1', 'demoproject.demoapp.models.Strategy1')] res.form['sender'] = ['demoproject.demoapp.models.Strategy', 'demoproject.demoapp.models.Strategy1'] res.form.submit().follow() res = webapp.get(url, user=admin_user) assert res.context['adminform'].form.fields['sender'].choices == [('demoproject.demoapp.models.Strategy', 'demoproject.demoapp.models.Strategy'), ('demoproject.demoapp.models.Strategy1', 'demoproject.demoapp.models.Strategy1')]
def test_download_response(self): """'dynamic_path' streams file by generated path. As we use ``self.client``, this test involves the whole Django stack, including settings, middlewares, decorators... So we need to setup a file, the storage, and an URL. This test actually asserts the URL ``storage:dynamic_path`` streams a file in storage. """ setup_file("1.TXT") url = reverse("storage:dynamic_path", kwargs={"path": "1.txt"}) response = self.client.get(url) assert_download_response( self, response, content=file_content, basename="1.TXT", mime_type="text/plain", )
def test_empty_get(self): url = reverse('user_filter_view') response = self.client.get(url) self.assertEqual(response.status_code, 200)
def test_query(self): url = reverse('user_filter_view') + '?query=doe' response = self.client.get(url) self.assertEqual(response.status_code, 200) self.assertEqual(len(response.context['users']), 1)
def test_order_by_get(self): url = reverse('user_filter_view') + '?order_by=last_login' response = self.client.get(url) self.assertEqual(response.status_code, 200)
def test_query(self): url = reverse("user_filter_view") + "?query=doe" response = self.client.get(url) self.assertEqual(response.status_code, 200) self.assertEqual(len(response.context["users"]), 1)
def test_download_response(self): """HTTPDownloadView proxies Content-Type header.""" url = reverse("http:avatar_url") response = self.client.get(url) assert_download_response(self, response, mime_type="image/png")
def test_get(self): """Homepage returns HTTP 200.""" home_url = reverse("home") response = self.client.get(home_url) self.assertEqual(response.status_code, 200)