Open a file in read binary mode to avoid bytes issues.
This commit is contained in:
Awais Qureshi
2019-10-22 15:52:12 +05:00
parent d4b0968e3a
commit 3959bdf1ea

View File

@@ -256,7 +256,7 @@ class TestTranscriptAvailableTranslationsDispatch(TestVideo):
request = Request.blank('/available_translations')
response = self.item.transcript(request=request, dispatch='available_translations')
self.assertEqual(json.loads(response.body), ['en'])
self.assertEqual(json.loads(response.body.decode('utf-8')), ['en'])
def test_available_translation_non_en(self):
_upload_file(_create_srt_file(), self.item_descriptor.location, os.path.split(self.srt_file.name)[1])
@@ -416,7 +416,7 @@ class TestTranscriptAvailableTranslationsBumperDispatch(TestVideo):
request = Request.blank('/' + self.dispatch)
response = self.item.transcript(request=request, dispatch=self.dispatch)
self.assertEqual(json.loads(response.body), [lang])
self.assertEqual(json.loads(response.body.decode('utf-8')), [lang])
@patch('xmodule.video_module.transcripts_utils.get_available_transcript_languages')
def test_multiple_available_translations(self, mock_get_transcript_languages):
@@ -496,7 +496,7 @@ class TestTranscriptDownloadDispatch(TestVideo):
self.item.transcript_format = 'txt'
request = Request.blank('/download')
response = self.item.transcript(request=request, dispatch='download')
self.assertEqual(response.body, 'Subs!')
self.assertEqual(response.body.decode('utf-8'), 'Subs!')
self.assertEqual(response.headers['Content-Type'], 'text/plain; charset=utf-8')
self.assertEqual(response.headers['Content-Language'], 'en')
@@ -617,7 +617,7 @@ class TestTranscriptTranslationGetDispatch(TestVideo):
attach(self.item, subs_id)
request = Request.blank(url.format(subs_id))
response = self.item.transcript(request=request, dispatch=dispatch)
self.assertDictEqual(json.loads(response.body), subs)
self.assertDictEqual(json.loads(response.body.decode('utf-8')), subs)
def test_translation_non_en_youtube_success(self):
subs = {
@@ -637,7 +637,7 @@ class TestTranscriptTranslationGetDispatch(TestVideo):
self.store.update_item(self.item, self.user.id)
request = Request.blank('/translation/uk?videoId={}'.format(subs_id))
response = self.item.transcript(request=request, dispatch='translation/uk')
self.assertDictEqual(json.loads(response.body), subs)
self.assertDictEqual(json.loads(response.body.decode('utf-8')), subs)
# 0_75 subs are exist
request = Request.blank('/translation/uk?videoId={}'.format('0_75'))
@@ -650,7 +650,7 @@ class TestTranscriptTranslationGetDispatch(TestVideo):
]
}
self.assertDictEqual(json.loads(response.body), calculated_0_75)
self.assertDictEqual(json.loads(response.body.decode('utf-8')), calculated_0_75)
# 1_5 will be generated from 1_0
self.item.youtube_id_1_5 = '1_5'
self.store.update_item(self.item, self.user.id)
@@ -663,7 +663,7 @@ class TestTranscriptTranslationGetDispatch(TestVideo):
u'\u041f\u0440\u0438\u0432\u0456\u0442, edX \u0432\u0456\u0442\u0430\u0454 \u0432\u0430\u0441.'
]
}
self.assertDictEqual(json.loads(response.body), calculated_1_5)
self.assertDictEqual(json.loads(response.body.decode('utf-8')), calculated_1_5)
@ddt.data(
('translation/en', 'translation/en', attach_sub),
@@ -678,7 +678,7 @@ class TestTranscriptTranslationGetDispatch(TestVideo):
self.store.update_item(self.item, self.user.id)
request = Request.blank(url)
response = self.item.transcript(request=request, dispatch=dispatch)
self.assertDictEqual(json.loads(response.body), TRANSCRIPT)
self.assertDictEqual(json.loads(response.body.decode('utf-8')), TRANSCRIPT)
def test_translaton_non_en_html5_success(self):
subs = {
@@ -695,7 +695,7 @@ class TestTranscriptTranslationGetDispatch(TestVideo):
self.item.youtube_id_1_0 = ""
request = Request.blank('/translation/uk')
response = self.item.transcript(request=request, dispatch='translation/uk')
self.assertDictEqual(json.loads(response.body), subs)
self.assertDictEqual(json.loads(response.body.decode('utf-8')), subs)
def test_translation_static_transcript_xml_with_data_dirc(self):
"""