Skip to content

Commit cbaca3a

Browse files
committed
Remove None values (urlencode raises TypeError in Django 2.2)
To catch usage mistakes, the test Client and django.utils.http.urlencode() now raise TypeError if None is passed as a value to encode because None can’t be encoded in GET and POST data. Either pass an empty string or omit the value.
1 parent d05b762 commit cbaca3a

File tree

1 file changed

+8
-0
lines changed

1 file changed

+8
-0
lines changed

readthedocs/rtd_tests/tests/test_project.py

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -452,6 +452,10 @@ def test_user_cant_change_lang_to_translation_lang(self):
452452
self.assertEqual(project_a.language, 'en')
453453
self.assertEqual(project_b.language, 'es')
454454
data = model_to_dict(project_a)
455+
456+
# Remove None values from data
457+
data = {k: v for k, v in data.items() if v is not None}
458+
455459
data['language'] = 'es'
456460
resp = self.client.post(
457461
reverse(
@@ -485,6 +489,10 @@ def test_user_can_change_project_with_same_lang(self):
485489
self.assertEqual(project_a.language, 'en')
486490
self.assertEqual(project_b.language, 'es')
487491
data = model_to_dict(project_a)
492+
493+
# Remove None values from data
494+
data = {k: v for k, v in data.items() if v is not None}
495+
488496
# Same language
489497
data['language'] = 'en'
490498
resp = self.client.post(

0 commit comments

Comments
 (0)