Skip to content

Commit 12908b1

Browse files
committed
test: test TestMultipleChoiceField can json serializable
1 parent 6428ac4 commit 12908b1

File tree

1 file changed

+26
-1
lines changed

1 file changed

+26
-1
lines changed

tests/test_fields.py

Lines changed: 26 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,8 @@
1111

1212
import pytest
1313

14+
from rest_framework.utils import json
15+
1416
try:
1517
import pytz
1618
except ImportError:
@@ -2193,7 +2195,30 @@ def test_against_partial_and_full_updates(self):
21932195
field.partial = False
21942196
assert field.get_value(QueryDict("")) == []
21952197
field.partial = True
2196-
assert field.get_value(QueryDict('')) == rest_framework.fields.empty
2198+
assert field.get_value(QueryDict("")) == rest_framework.fields.empty
2199+
2200+
def test_valid_inputs_is_json_serializable(self):
2201+
for input_value, _ in get_items(self.valid_inputs):
2202+
validated = self.field.run_validation(input_value)
2203+
2204+
try:
2205+
json.dumps(validated)
2206+
except TypeError as e:
2207+
assert (
2208+
False
2209+
), f"Validated output not JSON serializable: {repr(validated)}; Error: {e}"
2210+
2211+
def test_output_is_json_serializable(self):
2212+
for output_value, _ in get_items(self.outputs):
2213+
representation = self.field.to_representation(output_value)
2214+
2215+
try:
2216+
json.dumps(representation)
2217+
except TypeError as e:
2218+
assert False, (
2219+
f"to_representation output not JSON serializable: "
2220+
f"{repr(representation)}; Error: {e}"
2221+
)
21972222

21982223

21992224
class TestEmptyMultipleChoiceField(FieldValues):

0 commit comments

Comments
 (0)
pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy