Skip to content

Commit 476b5ce

Browse files
living180matthiask
authored andcommitted
Fix BytesWarnings in tests
Don't pass bytes objects as filter arguments for CharField fields. They get passed to str() internally within Django which results in a BytesWaring.
1 parent c335601 commit 476b5ce

File tree

1 file changed

+5
-5
lines changed

1 file changed

+5
-5
lines changed

tests/panels/test_sql.py

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@
2121
psycopg = None
2222

2323
from ..base import BaseMultiDBTestCase, BaseTestCase
24-
from ..models import PostgresJSON
24+
from ..models import Binary, PostgresJSON
2525

2626

2727
def sql_call(use_iterator=False):
@@ -149,7 +149,7 @@ def test_non_ascii_query(self):
149149
self.assertEqual(len(self.panel._queries), 2)
150150

151151
# non-ASCII bytes parameters
152-
list(User.objects.filter(username="café".encode()))
152+
list(Binary.objects.filter(field__in=["café".encode()]))
153153
self.assertEqual(len(self.panel._queries), 3)
154154

155155
response = self.panel.process_request(self.request)
@@ -335,7 +335,7 @@ def test_insert_content(self):
335335
Test that the panel only inserts content after generate_stats and
336336
not the process_request.
337337
"""
338-
list(User.objects.filter(username="café".encode()))
338+
list(User.objects.filter(username="café"))
339339
response = self.panel.process_request(self.request)
340340
# ensure the panel does not have content yet.
341341
self.assertNotIn("café", self.panel.content)
@@ -351,7 +351,7 @@ def test_insert_locals(self):
351351
Test that the panel inserts locals() content.
352352
"""
353353
local_var = "<script>alert('test');</script>" # noqa: F841
354-
list(User.objects.filter(username="café".encode()))
354+
list(User.objects.filter(username="café"))
355355
response = self.panel.process_request(self.request)
356356
self.panel.generate_stats(self.request, response)
357357
self.assertIn("local_var", self.panel.content)
@@ -365,7 +365,7 @@ def test_not_insert_locals(self):
365365
"""
366366
Test that the panel does not insert locals() content.
367367
"""
368-
list(User.objects.filter(username="café".encode()))
368+
list(User.objects.filter(username="café"))
369369
response = self.panel.process_request(self.request)
370370
self.panel.generate_stats(self.request, response)
371371
self.assertNotIn("djdt-locals", self.panel.content)

0 commit comments

Comments
 (0)