Used early return as before

This commit is contained in:
Oliver Sauder 2025-01-08 10:47:06 +04:00
parent c05926b851
commit 1b5a84ab8b

View File

@ -150,6 +150,8 @@ class APIRequestFactory(DjangoRequestFactory):
"""
Encode the data returning a two tuple of (bytes, content_type)
"""
if data is None:
return (b'', content_type)
assert format is None or content_type is None, (
'You may not set both `format` and `content_type`.'
@ -161,9 +163,6 @@ class APIRequestFactory(DjangoRequestFactory):
except AttributeError:
pass
if data is None:
data = ''
# Content type specified explicitly, treat data as a raw bytestring
ret = force_bytes(data, settings.DEFAULT_CHARSET)
@ -181,6 +180,7 @@ class APIRequestFactory(DjangoRequestFactory):
# Use format and render the data into a bytestring
renderer = self.renderer_classes[format]()
ret = renderer.render(data)
# Determine the content-type header from the renderer
content_type = renderer.media_type
@ -189,14 +189,9 @@ class APIRequestFactory(DjangoRequestFactory):
content_type, renderer.charset
)
if data is None:
ret = ''
else:
ret = renderer.render(data)
# Coerce text to bytes if required.
if isinstance(ret, str) and renderer.charset:
ret = ret.encode(renderer.charset)
# Coerce text to bytes if required.
if isinstance(ret, str):
ret = ret.encode(renderer.charset)
return ret, content_type