compat: only add compat implementation of RequestFactory.generic() if not

provided by django
This commit is contained in:
Markus Korn 2015-06-22 14:05:56 +02:00
parent d86e494e86
commit 06c61fc511

View File

@ -199,8 +199,6 @@ if 'patch' not in View.http_method_names:
View.http_method_names = View.http_method_names + ['patch']
# RequestFactory only provides `generic` from 1.5 onwards
from django.test.client import RequestFactory as DjangoRequestFactory
from django.test.client import FakePayload
try:
@ -211,7 +209,11 @@ except ImportError:
from django.utils.encoding import smart_str as force_bytes_or_smart_bytes
class RequestFactory(DjangoRequestFactory):
# RequestFactory only provides `generic` from 1.5 onwards
if django.VERSION < (1, 5):
from django.test.client import RequestFactory as DjangoRequestFactory
class RequestFactory(DjangoRequestFactory):
def generic(self, method, path,
data='', content_type='application/octet-stream', **extra):
parsed = _urlparse(path)
@ -229,6 +231,8 @@ class RequestFactory(DjangoRequestFactory):
})
r.update(extra)
return self.request(**r)
else:
from django.test.client import RequestFactory
# Markdown is optional