From 6b50e12b0eb0c49a3b4391dbe8e80ec1a8e0ad33 Mon Sep 17 00:00:00 2001 From: Awais Qureshi Date: Wed, 4 Sep 2019 17:27:12 +0500 Subject: [PATCH] BOM-364 python3 tests failures. --- cms/djangoapps/contentstore/views/course.py | 4 ++++ cms/djangoapps/contentstore/views/tests/test_textbooks.py | 4 ++-- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/cms/djangoapps/contentstore/views/course.py b/cms/djangoapps/contentstore/views/course.py index 5b5aa03264..6c3705284d 100644 --- a/cms/djangoapps/contentstore/views/course.py +++ b/cms/djangoapps/contentstore/views/course.py @@ -1350,6 +1350,8 @@ def validate_textbooks_json(text): """ Validate the given text as representing a single PDF textbook """ + if isinstance(text, (bytes, bytearray)): # data appears as bytes + text = text.decode('utf-8') try: textbooks = json.loads(text) except ValueError: @@ -1370,6 +1372,8 @@ def validate_textbook_json(textbook): """ Validate the given text as representing a list of PDF textbooks """ + if isinstance(textbook, (bytes, bytearray)): # data appears as bytes + textbook = textbook.decode('utf-8') if isinstance(textbook, six.string_types): try: textbook = json.loads(textbook) diff --git a/cms/djangoapps/contentstore/views/tests/test_textbooks.py b/cms/djangoapps/contentstore/views/tests/test_textbooks.py index 53f6b8487d..036ebcf681 100644 --- a/cms/djangoapps/contentstore/views/tests/test_textbooks.py +++ b/cms/djangoapps/contentstore/views/tests/test_textbooks.py @@ -258,7 +258,7 @@ class TextbookDetailTestCase(CourseTestCase): self.assertEqual(resp.status_code, 201) resp2 = self.client.get(url) self.assertEqual(resp2.status_code, 200) - compare = json.loads(resp2.content) + compare = json.loads(resp2.content.decode('utf-8')) self.assertEqual(compare, textbook) self.reload_course() self.assertEqual( @@ -281,7 +281,7 @@ class TextbookDetailTestCase(CourseTestCase): self.assertEqual(resp.status_code, 201) resp2 = self.client.get(self.url2) self.assertEqual(resp2.status_code, 200) - compare = json.loads(resp2.content) + compare = json.loads(resp2.content.decode('utf-8')) self.assertEqual(compare, replacement) course = self.store.get_item(self.course.location) self.assertEqual(