summaryrefslogtreecommitdiff
path: root/django/test
diff options
context:
space:
mode:
authorNick Pope <nick.pope@flightdataservices.com>2017-12-11 12:08:45 +0000
committerTim Graham <timograham@gmail.com>2017-12-11 07:08:45 -0500
commitd13a9e44ded4e93570c6ba42ec84e45ddca2505b (patch)
tree0df16e6538d8794c39bd62b5a46879b8abe6572c /django/test
parenta9e5ac823df8ba8b786b6450c967ca378c008d0e (diff)
Fixed #28909 -- Simplified code using tuple/list/set/dict unpacking.
Diffstat (limited to 'django/test')
-rw-r--r--django/test/client.py21
-rw-r--r--django/test/testcases.py2
-rw-r--r--django/test/utils.py6
3 files changed, 14 insertions, 15 deletions
diff --git a/django/test/client.py b/django/test/client.py
index 6406f8309e..3a163d126f 100644
--- a/django/test/client.py
+++ b/django/test/client.py
@@ -274,7 +274,7 @@ class RequestFactory:
# - HTTP_COOKIE: for cookie support,
# - REMOTE_ADDR: often useful, see #8551.
# See http://www.python.org/dev/peps/pep-3333/#environ-variables
- environ = {
+ return {
'HTTP_COOKIE': self.cookies.output(header='', sep='; '),
'PATH_INFO': '/',
'REMOTE_ADDR': '127.0.0.1',
@@ -290,10 +290,9 @@ class RequestFactory:
'wsgi.multiprocess': True,
'wsgi.multithread': False,
'wsgi.run_once': False,
+ **self.defaults,
+ **request,
}
- environ.update(self.defaults)
- environ.update(request)
- return environ
def request(self, **request):
"Construct a generic request object."
@@ -325,11 +324,10 @@ class RequestFactory:
def get(self, path, data=None, secure=False, **extra):
"""Construct a GET request."""
data = {} if data is None else data
- r = {
+ return self.generic('GET', path, secure=secure, **{
'QUERY_STRING': urlencode(data, doseq=True),
- }
- r.update(extra)
- return self.generic('GET', path, secure=secure, **r)
+ **extra,
+ })
def post(self, path, data=None, content_type=MULTIPART_CONTENT,
secure=False, **extra):
@@ -343,11 +341,10 @@ class RequestFactory:
def head(self, path, data=None, secure=False, **extra):
"""Construct a HEAD request."""
data = {} if data is None else data
- r = {
+ return self.generic('HEAD', path, secure=secure, **{
'QUERY_STRING': urlencode(data, doseq=True),
- }
- r.update(extra)
- return self.generic('HEAD', path, secure=secure, **r)
+ **extra,
+ })
def trace(self, path, secure=False, **extra):
"""Construct a TRACE request."""
diff --git a/django/test/testcases.py b/django/test/testcases.py
index c099258bef..3496166124 100644
--- a/django/test/testcases.py
+++ b/django/test/testcases.py
@@ -635,7 +635,7 @@ class SimpleTestCase(unittest.TestCase):
if field_kwargs is None:
field_kwargs = {}
required = fieldclass(*field_args, **field_kwargs)
- optional = fieldclass(*field_args, **dict(field_kwargs, required=False))
+ optional = fieldclass(*field_args, **{**field_kwargs, 'required': False})
# test valid inputs
for input, output in valid.items():
self.assertEqual(required.clean(input), output)
diff --git a/django/test/utils.py b/django/test/utils.py
index 0cec1a2309..1678bf0de4 100644
--- a/django/test/utils.py
+++ b/django/test/utils.py
@@ -423,8 +423,10 @@ class override_settings(TestContextDecorator):
test_func._overridden_settings = self.options
else:
# Duplicate dict to prevent subclasses from altering their parent.
- test_func._overridden_settings = dict(
- test_func._overridden_settings, **self.options)
+ test_func._overridden_settings = {
+ **test_func._overridden_settings,
+ **self.options,
+ }
def decorate_class(self, cls):
from django.test import SimpleTestCase