Allow passing url path and not just view names to the test

client.

Signed-off-by: Roberto Rosario <roberto.rosario.gonzalez@gmail.com>
This commit is contained in:
Roberto Rosario
2017-08-31 02:18:11 -04:00
parent c375282de0
commit 93e95705f8

View File

@@ -63,13 +63,15 @@ class GenericViewTestCase(BaseTestCase):
response.context.update({'request': response.wsgi_request})
return Context(response.context)
def get(self, viewname, *args, **kwargs):
def get(self, viewname=None, path=None, *args, **kwargs):
data = kwargs.pop('data', {})
follow = kwargs.pop('follow', False)
if viewname:
path = reverse(viewname=viewname, *args, **kwargs)
return self.client.get(
reverse(viewname=viewname, *args, **kwargs),
data=data, follow=follow
path=path, data=data, follow=follow
)
def login(self, username, password):
@@ -89,13 +91,15 @@ class GenericViewTestCase(BaseTestCase):
def logout(self):
self.client.logout()
def post(self, viewname, *args, **kwargs):
def post(self, viewname=None, path=None, *args, **kwargs):
data = kwargs.pop('data', {})
follow = kwargs.pop('follow', False)
if viewname:
path = reverse(viewname=viewname, *args, **kwargs)
return self.client.post(
reverse(viewname=viewname, *args, **kwargs),
data=data, follow=follow
path=path, data=data, follow=follow
)