Commit 2efee4eb by muhammad-ammar

Merge pull request #4939 from edx/ammar/bok-choy-transcript-tests-batch3

Bok-Choy Video Transcript Tests Batch3
parents 50535ac8 6b2874de
......@@ -82,260 +82,3 @@ Feature: CMS Transcripts
# And I see button "use_existing"
# And I click transcript button "use_existing"
# And I see value "video_name_3" in the field "Default Timed Transcript"
#26
Scenario: Subtitles are copied for every html5 video source
Given I have created a Video component
And I edit the component
And I enter a "video_name_1.mp4" source to field number 1
And I see status message "not found"
And I enter a "video_name_2.webm" source to field number 2
And I see status message "not found"
And I upload the transcripts file "uk_transcripts.srt"
Then I see status message "uploaded_successfully"
And I see value "video_name_1|video_name_2" in the field "Default Timed Transcript"
And I clear field number 1
Then I see status message "found"
And I see value "video_name_2" in the field "Default Timed Transcript"
#27
Scenario: Upload button for single youtube id
Given I have created a Video component
And I edit the component
And I enter a "http://youtu.be/t_not_exist" source to field number 1
Then I see status message "not found"
And I see button "upload_new_timed_transcripts"
And I upload the transcripts file "uk_transcripts.srt"
Then I see status message "uploaded_successfully"
And I save changes
Then when I view the video it does show the captions
And I edit the component
Then I see status message "found"
#28
Scenario: Upload button for youtube id with html5 ids
Given I have created a Video component
And I edit the component
And I enter a "http://youtu.be/t_not_exist" source to field number 1
Then I see status message "not found"
And I see button "upload_new_timed_transcripts"
And I enter a "video_name_1.mp4" source to field number 2
Then I see status message "not found"
And I see button "upload_new_timed_transcripts"
And I upload the transcripts file "uk_transcripts.srt"
Then I see status message "uploaded_successfully"
And I clear field number 1
Then I see status message "found"
And I see value "video_name_1" in the field "Default Timed Transcript"
And I save changes
Then when I view the video it does show the captions
And I edit the component
Then I see status message "found"
#29
Scenario: Change transcripts field in Advanced tab
Given I have created a Video component with subtitles "t_not_exist"
And I edit the component
And I enter a "video_name_1.mp4" source to field number 1
Then I see status message "not found"
And I open tab "Advanced"
And I set value "t_not_exist" to the field "Default Timed Transcript"
And I save changes
Then when I view the video it does show the captions
And I edit the component
Then I see status message "found"
And I see value "video_name_1" in the field "Default Timed Transcript"
#30
Scenario: Check non-ascii (chinise) transcripts
Given I have created a Video component
And I edit the component
And I enter a "video_name_1.mp4" source to field number 1
Then I see status message "not found"
And I upload the transcripts file "chinese_transcripts.srt"
Then I see status message "uploaded_successfully"
And I save changes
Then when I view the video it does show the captions
#31
Scenario: Check saving module metadata on switching between tabs
Given I have created a Video component with subtitles "t_not_exist"
And I edit the component
And I enter a "video_name_1.mp4" source to field number 1
Then I see status message "not found"
And I open tab "Advanced"
And I set value "t_not_exist" to the field "Default Timed Transcript"
And I open tab "Basic"
Then I see status message "found"
And I save changes
Then when I view the video it does show the captions
And I edit the component
Then I see status message "found"
And I see value "video_name_1" in the field "Default Timed Transcript"
#32
Scenario: After clearing Transcripts field in the Advanced tab "not found" message should be visible w/o saving
Given I have created a Video component
And I edit the component
And I enter a "t_not_exist.mp4" source to field number 1
Then I see status message "not found"
And I upload the transcripts file "chinese_transcripts.srt"
Then I see status message "uploaded_successfully"
And I open tab "Advanced"
And I set value "" to the field "Default Timed Transcript"
And I open tab "Basic"
Then I see status message "not found"
And I save changes
Then when I view the video it does not show the captions
And I edit the component
Then I see status message "not found"
And I see value "" in the field "Default Timed Transcript"
#33
Scenario: After clearing Transcripts field in the Advanced tab "not found" message should be visible with saving
Given I have created a Video component
And I edit the component
And I enter a "t_not_exist.mp4" source to field number 1
Then I see status message "not found"
And I upload the transcripts file "chinese_transcripts.srt"
Then I see status message "uploaded_successfully"
And I save changes
Then I see "好 各位同学" text in the captions
And I edit the component
And I open tab "Advanced"
And I set value "" to the field "Default Timed Transcript"
And I open tab "Basic"
Then I see status message "not found"
And I save changes
Then when I view the video it does not show the captions
And I edit the component
Then I see status message "not found"
And I see value "" in the field "Default Timed Transcript"
#34
Scenario: Video with existing subs - Advanced tab - change to another one subs - Basic tab - Found message - Save - see correct subs
Given I have created a Video component with subtitles "t_not_exist"
And I edit the component
And I enter a "video_name_1.mp4" source to field number 1
Then I see status message "not found"
And I upload the transcripts file "chinese_transcripts.srt"
Then I see status message "uploaded_successfully"
And I save changes
Then when I view the video it does show the captions
And I see "好 各位同学" text in the captions
And I edit the component
And I open tab "Advanced"
And I set value "t_not_exist" to the field "Default Timed Transcript"
And I open tab "Basic"
Then I see status message "found"
And I save changes
Then when I view the video it does show the captions
And I see "LILA FISHER: Hi, welcome to Edx." text in the captions
#35
Scenario: After reverting Transcripts field in the Advanced tab "not found" message should be visible
Given I have created a Video component
And I edit the component
And I enter a "t_not_exist.mp4" source to field number 1
Then I see status message "not found"
And I upload the transcripts file "chinese_transcripts.srt"
Then I see status message "uploaded_successfully"
And I save changes
Then I see "好 各位同学" text in the captions
And I edit the component
And I open tab "Advanced"
And I revert the transcript field "Default Timed Transcript"
And I save changes
Then when I view the video it does not show the captions
And I edit the component
Then I see status message "not found"
#36 Uploading subtitles for file with periods in it should properly set the transcript name and keep the periods
Scenario: File name and name of subs are different
Given I have created a Video component
And I edit the component
And I enter a "video_name_1.1.2.mp4" source to field number 1
And I see status message "not found"
And I upload the transcripts file "uk_transcripts.srt"
Then I see status message "uploaded_successfully"
And I see value "video_name_1.1.2" in the field "Default Timed Transcript"
And I save changes
Then when I view the video it does show the captions
And I edit the component
Then I see status message "found"
#37 Uploading subtitles with different file name than file
Scenario: Shortened link: File name and name of subs are different
Given I have created a Video component
And I edit the component
And I enter a "http://goo.gl/pxxZrg" source to field number 1
And I see status message "not found"
And I upload the transcripts file "uk_transcripts.srt"
Then I see status message "uploaded_successfully"
And I see value "pxxZrg" in the field "Default Timed Transcript"
And I save changes
Then when I view the video it does show the captions
And I edit the component
Then I see status message "found"
#38 Uploading subtitles with different file name than file
Scenario: Relative link: File name and name of subs are different
Given I have created a Video component
And I edit the component
And I enter a "/gizmo.webm" source to field number 1
And I see status message "not found"
And I upload the transcripts file "uk_transcripts.srt"
Then I see status message "uploaded_successfully"
And I see value "gizmo" in the field "Default Timed Transcript"
And I save changes
Then when I view the video it does show the captions
And I edit the component
Then I see status message "found"
......@@ -503,7 +503,6 @@ class VideoComponentPage(VideoPage):
self.click_button('collapse_link')
self.q(css=CLASS_SELECTORS['url_inputs']).nth(field_number - 1).fill(url)
time.sleep(DELAY)
self.wait_for_ajax()
......@@ -548,6 +547,19 @@ class VideoComponentPage(VideoPage):
return statuses
def clear_field(self, index):
"""
Clear a video url field at index specified by `index`.
"""
self.q(css=CLASS_SELECTORS['url_inputs']).nth(index - 1).fill('')
# Trigger an 'input' event after filling the field with an empty value.
self.browser.execute_script(
"$('{}:eq({})').trigger('{}')".format(CLASS_SELECTORS['url_inputs'], index, 'input'))
time.sleep(DELAY)
self.wait_for_ajax()
def clear_fields(self):
"""
Clear video url fields.
......@@ -563,6 +575,13 @@ class VideoComponentPage(VideoPage):
time.sleep(DELAY)
self.wait_for_ajax()
def revert_field(self, field_name):
"""
Revert a field.
"""
_, setting = self._get_setting_entry(field_name)
setting.find_element_by_class_name('setting-clear').click()
def is_transcript_button_visible(self, button_name, index=0, button_text=None):
"""
Check if a transcript related button is visible.
......
......@@ -48,34 +48,42 @@ class VideoTranscriptTest(CMSVideoBaseTest):
"""
Scenario: Check input error messages
Given I have created a Video component
Entering "123.webm" and "456.webm" source to field number 1 and 2 respectively should disable field 1 and 3
Then I see error message "Link types should be unique."
When I clear fields, input fields should be enabled
And I enter a "http://link.c" source to field number 1 should disable fields 2 and 3
Then I see error message "Incorrect url format."
Entering "http://goo.gl/pxxZrg" source to both field number 1 and 2 should disable fields 1 and 3
Then I see error message "Links should be unique."
When I clear fields, input fields should be enabled
And I enter a "http://youtu.be/t_not_exist" source to field number 1
Then I do not see error message
And I expect inputs are enabled
"""
self._create_video_component()
self.edit_component()
#User inputs html5 links with equal extension
self.video.set_url_field('123.webm', 1)
self.video.set_url_field('456.webm', 2)
self.assertEqual(self.video.message('error'), 'Link types should be unique.')
# Currently we are working with 2nd field. It means, that if 2nd field
# contain incorrect value, 1st and 3rd fields should be disabled until
# 2nd field will be filled by correct correct value
self.assertEqual(self.video.url_field_status(1, 3).values(), [False, False])
self.video.clear_fields()
self.assertEqual(self.video.url_field_status().values(), [True, True, True])
#User input URL with incorrect format
self.video.set_url_field('http://link.c', 1)
self.assertEqual(self.video.message('error'), 'Incorrect url format.')
self.assertEqual(self.video.url_field_status(2, 3).values(), [False, False])
#User input URL with incorrect format
self.video.set_url_field('http://goo.gl/pxxZrg', 1)
self.video.set_url_field('http://goo.gl/pxxZrg', 2)
......@@ -83,6 +91,7 @@ class VideoTranscriptTest(CMSVideoBaseTest):
self.assertEqual(self.video.url_field_status(1, 3).values(), [False, False])
self.video.clear_fields()
self.assertEqual(self.video.url_field_status().values(), [True, True, True])
self.video.set_url_field('http://youtu.be/t_not_exist', 1)
self.assertEqual(self.video.message('error'), '')
self.assertEqual(self.video.url_field_status().values(), [True, True, True])
......@@ -91,9 +100,11 @@ class VideoTranscriptTest(CMSVideoBaseTest):
"""
Scenario: Testing interaction with test youtube server
Given I have created a Video component with subtitles
And I enter a "http://youtu.be/t__eq_exist" source to field number 1
Then I see status message "No EdX Timed Transcript"
And I see button "import"
And I enter a "http://youtu.be/t_not_exist" source to field number 1
Then I see status message "No Timed Transcript"
And I do not see button "import"
......@@ -101,11 +112,13 @@ class VideoTranscriptTest(CMSVideoBaseTest):
"""
self._create_video_component(subtitles=True)
self.edit_component()
# first part of url will be substituted by mock_youtube_server address
# for t__eq_exist id server will respond with transcripts
self.video.set_url_field('http://youtu.be/t__eq_exist', 1)
self.assertEqual(self.video.message('status'), 'No EdX Timed Transcript')
self.assertTrue(self.video.is_transcript_button_visible('import'))
self.video.set_url_field('http://youtu.be/t_not_exist', 1)
self.assertEqual(self.video.message('status'), 'No Timed Transcript')
self.assertFalse(self.video.is_transcript_button_visible('import'))
......@@ -115,12 +128,14 @@ class VideoTranscriptTest(CMSVideoBaseTest):
"""
Scenario: Youtube id only: check "Found" state
Given I have created a Video component with subtitles "t_not_exist"
And I enter a "http://youtu.be/t_not_exist" source to field number 1
Then I see status message "Timed Transcript Found"
And I see value "t_not_exist" in the field "Default Timed Transcript"
"""
self._create_video_component(subtitles=True, subtitle_id='t_not_exist')
self.edit_component()
self.video.set_url_field('http://youtu.be/t_not_exist', 1)
self.assertEqual(self.video.message('status'), 'Timed Transcript Found')
self.open_advanced_tab()
......@@ -130,12 +145,14 @@ class VideoTranscriptTest(CMSVideoBaseTest):
"""
Scenario: Youtube id only: check "Found" state when user sets youtube_id with same local and server subs
Given I have created a Video component with subtitles "t__eq_exist"
And I enter a "http://youtu.be/t__eq_exist" source to field number 1
And I see status message "Timed Transcript Found"
And I see value "t__eq_exist" in the field "Default Timed Transcript"
"""
self._create_video_component(subtitles=True, subtitle_id='t__eq_exist')
self.edit_component()
self.video.set_url_field('http://youtu.be/t__eq_exist', 1)
self.assertEqual(self.video.message('status'), 'Timed Transcript Found')
self.open_advanced_tab()
......@@ -145,6 +162,7 @@ class VideoTranscriptTest(CMSVideoBaseTest):
"""
Scenario: Youtube id only: check "Found" state when user sets youtube_id with different local and server subs
Given I have created a Video component with subtitles "t_neq_exist"
And I enter a "http://youtu.be/t_neq_exist" source to field number 1
And I see status message "Timed Transcript Conflict"
And I see button "replace"
......@@ -154,6 +172,7 @@ class VideoTranscriptTest(CMSVideoBaseTest):
"""
self._create_video_component(subtitles=True, subtitle_id='t_neq_exist')
self.edit_component()
self.video.set_url_field('http://youtu.be/t_neq_exist', 1)
self.assertEqual(self.video.message('status'), 'Timed Transcript Conflict')
self.assertTrue(self.video.is_transcript_button_visible('replace'))
......@@ -166,12 +185,14 @@ class VideoTranscriptTest(CMSVideoBaseTest):
"""
Scenario: html5 source only: check "Not Found" state
Given I have created a Video component
And I enter a "t_not_exist.mp4" source to field number 1
Then I see status message "No Timed Transcript"
And I see value "" in the field "Default Timed Transcript"
"""
self._create_video_component()
self.edit_component()
self.video.set_url_field('t_not_exist.mp4', 1)
self.assertEqual(self.video.message('status'), 'No Timed Transcript')
self.open_advanced_tab()
......@@ -181,12 +202,14 @@ class VideoTranscriptTest(CMSVideoBaseTest):
"""
Scenario: html5 source only: check "Found" state
Given I have created a Video component with subtitles "t_not_exist"
And I enter a "t_not_exist.mp4" source to field number 1
Then I see status message "Timed Transcript Found"
And I see value "t_not_exist" in the field "Default Timed Transcript"
"""
self._create_video_component(subtitles=True, subtitle_id='t_not_exist')
self.edit_component()
self.video.set_url_field('t_not_exist.mp4', 1)
self.assertEqual(self.video.message('status'), 'Timed Transcript Found')
self.open_advanced_tab()
......@@ -196,6 +219,7 @@ class VideoTranscriptTest(CMSVideoBaseTest):
"""
Scenario: User sets youtube_id w/o server but with local subs and one html5 link w/o subs
Given I have created a Video component with subtitles "t_not_exist"
urls = ['http://youtu.be/t_not_exist', 'test_video_name.mp4']
for each url in urls do the following
Enter `url` to field number n
......@@ -204,6 +228,7 @@ class VideoTranscriptTest(CMSVideoBaseTest):
"""
self._create_video_component(subtitles=True, subtitle_id='t_not_exist')
self.edit_component()
urls = ['http://youtu.be/t_not_exist', 'test_video_name.mp4']
for index, url in enumerate(urls, 1):
self.video.set_url_field(url, index)
......@@ -217,6 +242,7 @@ class VideoTranscriptTest(CMSVideoBaseTest):
        Scenario: User sets youtube_id w/o local but with server subs and one html5 link w/o
                  transcripts w/o import action, then another one html5 link w/o transcripts
        Given I have created a Video component
        urls = ['http://youtu.be/t__eq_exist', 't_not_exist.mp4', 't_not_exist.webm']
        for each url in urls do the following
            Enter `url` to field number `n`
......@@ -225,6 +251,7 @@ class VideoTranscriptTest(CMSVideoBaseTest):
        """
self._create_video_component()
self.edit_component()
urls = ['http://youtu.be/t__eq_exist', 't_not_exist.mp4', 't_not_exist.webm']
for index, url in enumerate(urls, 1):
self.video.set_url_field(url, index)
......@@ -236,6 +263,7 @@ class VideoTranscriptTest(CMSVideoBaseTest):
"""
Scenario: Entering youtube (no importing), and 2 html5 sources without transcripts - "Not Found"
Given I have created a Video component
urls = ['http://youtu.be/t_not_exist', 't_not_exist.mp4', 't_not_exist.webm']
for each url in urls do the following
            Enter `url` to field number `n`
......@@ -244,6 +272,7 @@ class VideoTranscriptTest(CMSVideoBaseTest):
"""
self._create_video_component()
self.edit_component()
urls = ['http://youtu.be/t_not_exist', 't_not_exist.mp4', 't_not_exist.webm']
for index, url in enumerate(urls, 1):
self.video.set_url_field(url, index)
......@@ -255,12 +284,14 @@ class VideoTranscriptTest(CMSVideoBaseTest):
"""
Scenario: Entering youtube with imported transcripts, and 2 html5 sources without transcripts - "Found"
Given I have created a Video component
And I enter a "http://youtu.be/t__eq_exist" source to field number 1
Then I see status message "No EdX Timed Transcript"
And I see button "import"
And I click transcript button "import"
Then I see status message "Timed Transcript Found"
And I see button "upload_new_timed_transcripts"
urls = ['t_not_exist.mp4', 't_not_exist.webm']
for each url in urls do the following
            Enter `url` to field number `n`
......@@ -269,12 +300,14 @@ class VideoTranscriptTest(CMSVideoBaseTest):
"""
self._create_video_component()
self.edit_component()
self.video.set_url_field('http://youtu.be/t__eq_exist', 1)
self.assertEqual(self.video.message('status'), 'No EdX Timed Transcript')
self.assertTrue(self.video.is_transcript_button_visible('import'))
self.video.click_button('import')
self.assertEqual(self.video.message('status'), 'Timed Transcript Found')
self.assertTrue(self.video.is_transcript_button_visible('upload_new_timed_transcripts'))
urls = ['t_not_exist.mp4', 't_not_exist.webm']
for index, url in enumerate(urls, 2):
self.video.set_url_field(url, index)
......@@ -286,6 +319,7 @@ class VideoTranscriptTest(CMSVideoBaseTest):
"""
Scenario: Entering youtube w/o transcripts - html5 w/o transcripts - html5 with transcripts
Given I have created a Video component with subtitles "t_neq_exist"
urls = ['http://youtu.be/t_not_exist', 't_not_exist.mp4']
for each url in urls do the following
            Enter `url` to field number `n`
......@@ -298,6 +332,7 @@ class VideoTranscriptTest(CMSVideoBaseTest):
"""
self._create_video_component(subtitles=True, subtitle_id='t_neq_exist')
self.edit_component()
urls = ['http://youtu.be/t_not_exist', 't_not_exist.mp4']
for index, url in enumerate(urls, 1):
self.video.set_url_field(url, index)
......@@ -314,6 +349,7 @@ class VideoTranscriptTest(CMSVideoBaseTest):
"""
Scenario: Entering youtube w/o imported transcripts - html5 w/o transcripts w/o import - html5 with transcripts
Given I have created a Video component with subtitles "t_neq_exist"
urls = ['http://youtu.be/t__eq_exist', 't_not_exist.mp4', 't_neq_exist.webm']
for each url in urls do the following
            Enter `url` to field number `n`
......@@ -322,6 +358,7 @@ class VideoTranscriptTest(CMSVideoBaseTest):
"""
self._create_video_component(subtitles=True, subtitle_id='t_neq_exist')
self.edit_component()
urls = ['http://youtu.be/t__eq_exist', 't_not_exist.mp4', 't_neq_exist.webm']
for index, url in enumerate(urls, 1):
self.video.set_url_field(url, index)
......@@ -333,6 +370,7 @@ class VideoTranscriptTest(CMSVideoBaseTest):
"""
Scenario: Entering youtube w/o imported transcripts - html5 with transcripts - html5 w/o transcripts w/o import
Given I have created a Video component with subtitles "t_neq_exist"
urls = ['http://youtu.be/t__eq_exist', 't_neq_exist.mp4', 't_not_exist.webm']
for each url in urls do the following
            Enter `url` to field number `n`
......@@ -341,6 +379,7 @@ class VideoTranscriptTest(CMSVideoBaseTest):
"""
self._create_video_component(subtitles=True, subtitle_id='t_neq_exist')
self.edit_component()
urls = ['http://youtu.be/t__eq_exist', 't_neq_exist.mp4', 't_not_exist.webm']
for index, url in enumerate(urls, 1):
self.video.set_url_field(url, index)
......@@ -352,12 +391,14 @@ class VideoTranscriptTest(CMSVideoBaseTest):
"""
Scenario: Entering youtube with imported transcripts - html5 with transcripts - html5 w/o transcripts
Given I have created a Video component with subtitles "t_neq_exist"
And I enter a "http://youtu.be/t__eq_exist" source to field number 1
Then I see status message "No EdX Timed Transcript"
And I see button "import"
And I click transcript button "import"
Then I see status message "Timed Transcript Found"
And I see button "upload_new_timed_transcripts"
urls = ['t_neq_exist.mp4', 't_not_exist.webm']
for each url in urls do the following
            Enter `url` to field number `n`
......@@ -366,12 +407,14 @@ class VideoTranscriptTest(CMSVideoBaseTest):
"""
self._create_video_component(subtitles=True, subtitle_id='t_neq_exist')
self.edit_component()
self.video.set_url_field('http://youtu.be/t__eq_exist', 1)
self.assertEqual(self.video.message('status'), 'No EdX Timed Transcript')
self.assertTrue(self.video.is_transcript_button_visible('import'))
self.video.click_button('import')
self.assertEqual(self.video.message('status'), 'Timed Transcript Found')
self.assertTrue(self.video.is_transcript_button_visible('upload_new_timed_transcripts'))
urls = ['t_neq_exist.mp4', 't_not_exist.webm']
for index, url in enumerate(urls, 2):
self.video.set_url_field(url, index)
......@@ -383,12 +426,14 @@ class VideoTranscriptTest(CMSVideoBaseTest):
"""
Scenario: Entering youtube with imported transcripts - html5 w/o transcripts - html5 with transcripts
Given I have created a Video component with subtitles "t_neq_exist"
And I enter a "http://youtu.be/t__eq_exist" source to field number 1
Then I see status message "No EdX Timed Transcript"
And I see button "import"
And I click transcript button "import"
Then I see status message "Timed Transcript Found"
And I see button "upload_new_timed_transcripts"
urls = ['t_not_exist.mp4', 't_neq_exist.webm']
for each url in urls do the following
            Enter `url` to field number `n`
......@@ -397,12 +442,14 @@ class VideoTranscriptTest(CMSVideoBaseTest):
"""
self._create_video_component(subtitles=True, subtitle_id='t_neq_exist')
self.edit_component()
self.video.set_url_field('http://youtu.be/t__eq_exist', 1)
self.assertEqual(self.video.message('status'), 'No EdX Timed Transcript')
self.assertTrue(self.video.is_transcript_button_visible('import'))
self.video.click_button('import')
self.assertEqual(self.video.message('status'), 'Timed Transcript Found')
self.assertTrue(self.video.is_transcript_button_visible('upload_new_timed_transcripts'))
urls = ['t_not_exist.mp4', 't_neq_exist.webm']
for index, url in enumerate(urls, 2):
self.video.set_url_field(url, index)
......@@ -414,6 +461,7 @@ class VideoTranscriptTest(CMSVideoBaseTest):
"""
Scenario: Entering html5 with transcripts - upload - youtube w/o transcripts
Given I have created a Video component with subtitles "t__eq_exist"
And I enter a "t__eq_exist.mp4" source to field number 1
Then I see status message "Timed Transcript Found"
`download_to_edit` and `upload_new_timed_transcripts` buttons are shown
......@@ -421,14 +469,17 @@ class VideoTranscriptTest(CMSVideoBaseTest):
Then I see status message "Timed Transcript Uploaded Successfully"
`download_to_edit` and `upload_new_timed_transcripts` buttons are shown
And I see value "t__eq_exist" in the field "Default Timed Transcript"
And I enter a "http://youtu.be/t_not_exist" source to field number 2
Then I see status message "Timed Transcript Found"
`download_to_edit` and `upload_new_timed_transcripts` buttons are shown
And I enter a "uk_transcripts.webm" source to field number 3
Then I see status message "Timed Transcript Found"
"""
self._create_video_component(subtitles=True, subtitle_id='t__eq_exist')
self.edit_component()
self.video.set_url_field('t__eq_exist.mp4', 1)
self.assertEqual(self.video.message('status'), 'Timed Transcript Found')
self.assertTrue(self.video.is_transcript_button_visible('download_to_edit'))
......@@ -440,10 +491,12 @@ class VideoTranscriptTest(CMSVideoBaseTest):
self.open_advanced_tab()
self.assertTrue(self.video.verify_field_value('Default Timed Transcript', 't__eq_exist'))
self.open_basic_tab()
self.video.set_url_field('http://youtu.be/t_not_exist', 2)
self.assertEqual(self.video.message('status'), 'Timed Transcript Found')
self.assertTrue(self.video.is_transcript_button_visible('download_to_edit'))
self.assertTrue(self.video.is_transcript_button_visible('upload_new_timed_transcripts'))
self.video.set_url_field('uk_transcripts.webm', 3)
self.assertEqual(self.video.message('status'), 'Timed Transcript Found')
......@@ -451,12 +504,14 @@ class VideoTranscriptTest(CMSVideoBaseTest):
"""
Scenario: Enter 2 HTML5 sources with transcripts, they are not the same, choose
Given I have created a Video component with subtitles "t_not_exist"
And I enter a "uk_transcripts.mp4" source to field number 1
Then I see status message "No Timed Transcript"
`download_to_edit` and `upload_new_timed_transcripts` buttons are shown
And I upload the transcripts file "uk_transcripts.srt"
Then I see status message "Timed Transcript Uploaded Successfully"
And I see value "uk_transcripts" in the field "Default Timed Transcript"
And I enter a "t_not_exist.webm" source to field number 2
Then I see status message "Timed Transcript Conflict"
`Timed Transcript from uk_transcripts.mp4` and `Timed Transcript from t_not_exist.webm` buttons are shown
......@@ -465,6 +520,7 @@ class VideoTranscriptTest(CMSVideoBaseTest):
"""
self._create_video_component(subtitles=True, subtitle_id='t_not_exist')
self.edit_component()
self.video.set_url_field('uk_transcripts.mp4', 1)
self.assertEqual(self.video.message('status'), 'No Timed Transcript')
self.assertTrue(self.video.is_transcript_button_visible('download_to_edit'))
......@@ -474,6 +530,7 @@ class VideoTranscriptTest(CMSVideoBaseTest):
self.open_advanced_tab()
self.assertTrue(self.video.verify_field_value('Default Timed Transcript', 'uk_transcripts'))
self.open_basic_tab()
self.video.set_url_field('t_not_exist.webm', 2)
self.assertEqual(self.video.message('status'), 'Timed Transcript Conflict')
self.assertTrue(
......@@ -483,25 +540,31 @@ class VideoTranscriptTest(CMSVideoBaseTest):
def test_one_field_only(self):
"""
Scenario: Work with 1 field only: Enter HTML5 source with transcripts - save -> change it to another one HTML5
source w/o transcripts - click on use existing -> change it to another one HTML5 source w/o transcripts - do
not click on use existing -> change it to another one HTML5 source w/o transcripts - click on use existing
Scenario: Work with 1 field only: Enter HTML5 source with transcripts - save -> change it to another one
HTML5 source w/o transcripts - click on use existing -> change it to another one HTML5 source
w/o transcripts - do not click on use existing -> change it to another one HTML5 source w/o
transcripts - click on use existing
Given I have created a Video component with subtitles "t_not_exist"
If i enter "t_not_exist.mp4" source to field number 1 Then I see status message "Timed Transcript Found"
`download_to_edit` and `upload_new_timed_transcripts` buttons are shown
And I see value "t_not_exist" in the field "Default Timed Transcript"
And I save changes And then edit the component
If i enter "video_name_2.mp4" source to field number 1 Then I see status message "Confirm Timed Transcript"
I see button "use_existing" And I click on it
And I see value "video_name_2" in the field "Default Timed Transcript"
If i enter "video_name_3.mp4" source to field number 1 Then I see status message "Confirm Timed Transcript"
And I see button "use_existing"
If i enter a "video_name_4.mp4" source to field number 1 Then I see status message "Confirm Timed Transcript"
I see button "use_existing" And I click on it
And I see value "video_name_4" in the field "Default Timed Transcript"
"""
self._create_video_component(subtitles=True, subtitle_id='t_not_exist')
self.edit_component()
self.video.set_url_field('t_not_exist.mp4', 1)
self.assertEqual(self.video.message('status'), 'Timed Transcript Found')
self.assertTrue(self.video.is_transcript_button_visible('download_to_edit'))
......@@ -511,6 +574,7 @@ class VideoTranscriptTest(CMSVideoBaseTest):
self.open_basic_tab()
self.save_unit_settings()
self.edit_component()
self.video.set_url_field('video_name_2.mp4', 1)
self.assertEqual(self.video.message('status'), 'Confirm Timed Transcript')
self.assertTrue(self.video.is_transcript_button_visible('use_existing'))
......@@ -519,9 +583,11 @@ class VideoTranscriptTest(CMSVideoBaseTest):
self.open_advanced_tab()
self.assertTrue(self.video.verify_field_value('Default Timed Transcript', 'video_name_2'))
self.open_basic_tab()
self.video.set_url_field('video_name_3.mp4', 1)
self.assertEqual(self.video.message('status'), 'Confirm Timed Transcript')
self.assertTrue(self.video.is_transcript_button_visible('use_existing'))
self.video.set_url_field('video_name_4.mp4', 1)
self.assertEqual(self.video.message('status'), 'Confirm Timed Transcript')
self.assertTrue(self.video.is_transcript_button_visible('use_existing'))
......@@ -532,17 +598,20 @@ class VideoTranscriptTest(CMSVideoBaseTest):
def test_two_fields_only(self):
"""
Scenario: Work with 2 fields: Enter HTML5 source with transcripts - save -> change it to another one HTML5
source w/o transcripts - do not click on use existing -> add another one HTML5 source w/o transcripts -
click on use existing
source w/o transcripts - do not click on use existing -> add another one HTML5 source w/o
transcripts - click on use existing
Given I have created a Video component with subtitles "t_not_exist"
And I enter a "t_not_exist.mp4" source to field number 1
Then I see status message "Timed Transcript Found"
`download_to_edit` and `upload_new_timed_transcripts` buttons are shown
And I save changes
And I edit the component
And I enter a "video_name_2.mp4" source to field number 1
Then I see status message "Confirm Timed Transcript"
And I see button "use_existing"
And I enter a "video_name_3.webm" source to field number 2
Then I see status message "Confirm Timed Transcript"
And I see button "use_existing"
......@@ -551,15 +620,18 @@ class VideoTranscriptTest(CMSVideoBaseTest):
"""
self._create_video_component(subtitles=True, subtitle_id='t_not_exist')
self.edit_component()
self.video.set_url_field('t_not_exist.mp4', 1)
self.assertEqual(self.video.message('status'), 'Timed Transcript Found')
self.assertTrue(self.video.is_transcript_button_visible('download_to_edit'))
self.assertTrue(self.video.is_transcript_button_visible('upload_new_timed_transcripts'))
self.save_unit_settings()
self.edit_component()
self.video.set_url_field('video_name_2.mp4', 1)
self.assertEqual(self.video.message('status'), 'Confirm Timed Transcript')
self.assertTrue(self.video.is_transcript_button_visible('use_existing'))
self.video.set_url_field('video_name_3.webm', 2)
self.assertEqual(self.video.message('status'), 'Confirm Timed Transcript')
self.assertTrue(self.video.is_transcript_button_visible('use_existing'))
......@@ -571,6 +643,7 @@ class VideoTranscriptTest(CMSVideoBaseTest):
"""
Scenario: File name and name of subs are different (Uploading subtitles with different file name than file)
Given I have created a Video component
And I enter a "video_name_1.mp4" source to field number 1
And I see status message "No Timed Transcript"
And I upload the transcripts file "uk_transcripts.srt"
......@@ -583,6 +656,7 @@ class VideoTranscriptTest(CMSVideoBaseTest):
"""
self._create_video_component()
self.edit_component()
self.video.set_url_field('video_name_1.mp4', 1)
self.assertEqual(self.video.message('status'), 'No Timed Transcript')
self.video.upload_transcript('uk_transcripts.srt')
......@@ -596,15 +670,388 @@ class VideoTranscriptTest(CMSVideoBaseTest):
def test_video_wo_subtitles(self):
"""
Scenario: Video w/o subs - another video w/o subs - Not found message
Video can have filled item.sub, but doesn't have subs file.
In this case, after changing this video by another one without subs
`No Timed Transcript` message should appear ( not `Confirm Timed Transcript`).
Scenario: Video w/o subs - another video w/o subs - Not found message
`No Timed Transcript` message should appear ( not 'Confirm Timed Transcript').
Given I have created a Video component
And I enter a "video_name_1.mp4" source to field number 1
Then I see status message "No Timed Transcript"
"""
self._create_video_component()
self.edit_component()
self.video.set_url_field('video_name_1.mp4', 1)
self.assertEqual(self.video.message('status'), 'No Timed Transcript')
def test_subtitles_copy(self):
"""
Scenario: Subtitles are copied for every html5 video source
Given I have created a Video component
After I enter a "video_name_1.mp4" source to field number 1 Then I see status message "No Timed Transcript"
After I enter a "video_name_2.webm" source to field number 2 Then I see status message "No Timed Transcript"
After uploading transcript "uk_transcripts.srt" I should see message "Timed Transcript Uploaded Successfully"
And I see value "video_name_2" in the field "Default Timed Transcript"
When I clear field number 1 Then I see status message "Timed Transcript Found"
And I see value "video_name_2" in the field "Default Timed Transcript"
"""
self._create_video_component()
self.edit_component()
self.video.set_url_field('video_name_1.mp4', 1)
self.assertEqual(self.video.message('status'), 'No Timed Transcript')
self.video.set_url_field('video_name_2.webm', 2)
self.assertEqual(self.video.message('status'), 'No Timed Transcript')
self.video.upload_transcript('uk_transcripts.srt')
self.assertEqual(self.video.message('status'), 'Timed Transcript Uploaded Successfully')
self.open_advanced_tab()
self.assertTrue(self.video.verify_field_value('Default Timed Transcript', 'video_name_2'))
self.open_basic_tab()
self.video.clear_field(1)
self.assertEqual(self.video.message('status'), 'Timed Transcript Found')
self.open_advanced_tab()
self.assertTrue(self.video.verify_field_value('Default Timed Transcript', 'video_name_2'))
def test_upload_button_w_youtube(self):
"""
Scenario: Upload button for single youtube id
Given I have created a Video component
After I enter a "http://youtu.be/t_not_exist" source to field number 1 I see message "No Timed Transcript"
And I see button "upload_new_timed_transcripts"
After I upload the transcripts file "uk_transcripts.srt" I see message "Timed Transcript Uploaded Successfully"
After saving the changes video captions should be visible
When I edit the component Then I see status message "Timed Transcript Found"
"""
self._create_video_component()
self.edit_component()
self.video.set_url_field('http://youtu.be/t_not_exist', 1)
self.assertEqual(self.video.message('status'), 'No Timed Transcript')
self.assertTrue(self.video.is_transcript_button_visible('upload_new_timed_transcripts'))
self.video.upload_transcript('uk_transcripts.srt')
self.assertEqual(self.video.message('status'), 'Timed Transcript Uploaded Successfully')
self.save_unit_settings()
self.assertTrue(self.video.is_captions_visible())
self.edit_component()
self.assertEqual(self.video.message('status'), 'Timed Transcript Found')
def test_upload_button_w_html5_ids(self):
"""
Scenario: Upload button for youtube id with html5 ids
Given I have created a Video component
After I enter a "http://youtu.be/t_not_exist" source to field number 1 I see message "No Timed Transcript"
And I see button "upload_new_timed_transcripts"
After I enter a "video_name_1.mp4" source to field number 2 Then I see status message "No Timed Transcript"
And I see button "upload_new_timed_transcripts"
After I upload the transcripts file "uk_transcripts.srt"I see message "Timed Transcript Uploaded Successfully"
When I clear field number 1 Then I see status message "Timed Transcript Found"
And I see value "video_name_1" in the field "Default Timed Transcript"
After saving the changes video captions should be visible
When I edit the component Then I see status message "Timed Transcript Found"
"""
self._create_video_component()
self.edit_component()
self.video.set_url_field('http://youtu.be/t_not_exist', 1)
self.assertEqual(self.video.message('status'), 'No Timed Transcript')
self.assertTrue(self.video.is_transcript_button_visible('upload_new_timed_transcripts'))
self.video.set_url_field('video_name_1.mp4', 2)
self.assertEqual(self.video.message('status'), 'No Timed Transcript')
self.assertTrue(self.video.is_transcript_button_visible('upload_new_timed_transcripts'))
self.video.upload_transcript('uk_transcripts.srt')
self.assertEqual(self.video.message('status'), 'Timed Transcript Uploaded Successfully')
self.video.clear_field(1)
self.assertEqual(self.video.message('status'), 'Timed Transcript Found')
self.open_advanced_tab()
self.assertTrue(self.video.verify_field_value('Default Timed Transcript', 'video_name_1'))
self.save_unit_settings()
self.assertTrue(self.video.is_captions_visible())
self.edit_component()
self.assertEqual(self.video.message('status'), 'Timed Transcript Found')
def test_advanced_tab_transcript_fields(self):
"""
Scenario: Change transcripts field in Advanced tab
Given I have created a Video component with subtitles "t_not_exist"
After I enter a "video_name_1.mp4" source to field number 1 Then I see status message "No Timed Transcript"
Open tab "Advanced" and set value "t_not_exist" to the field "Default Timed Transcript"
After saving the changes video captions should be visible
When I edit the component Then I see status message "Timed Transcript Found"
And I see value "video_name_1" in the field "Default Timed Transcript"
"""
self._create_video_component(subtitles=True, subtitle_id='t_not_exist')
self.edit_component()
self.video.set_url_field('video_name_1.mp4', 1)
self.assertEqual(self.video.message('status'), 'No Timed Transcript')
self.open_advanced_tab()
self.video.set_field_value('Default Timed Transcript', 't_not_exist')
self.save_unit_settings()
self.assertTrue(self.video.is_captions_visible())
self.edit_component()
self.assertEqual(self.video.message('status'), 'Timed Transcript Found')
self.assertTrue(self.video.verify_field_value('Default Timed Transcript', 'video_name_1'))
def test_non_ascii_transcripts(self):
"""
Scenario: Check non-ascii (chinese) transcripts
Given I have created a Video component
After I enter a "video_name_1.mp4" source to field number 1 Then I see status message "No Timed Transcript"
After I upload the transcripts "chinese_transcripts.srt" I see message "Timed Transcript Uploaded Successfully"
After saving the changes video captions should be visible
"""
self._create_video_component()
self.edit_component()
self.video.set_url_field('video_name_1.mp4', 1)
self.assertEqual(self.video.message('status'), 'No Timed Transcript')
self.video.upload_transcript('chinese_transcripts.srt')
self.assertEqual(self.video.message('status'), 'Timed Transcript Uploaded Successfully')
self.save_unit_settings()
self.assertTrue(self.video.is_captions_visible())
def test_module_metadata_save(self):
"""
Scenario: Check saving module metadata on switching between tabs
Given I have created a Video component with subtitles "t_not_exist"
After I enter a "video_name_1.mp4" source to field number 1 I should see status message "No Timed Transcript"
Open tab "Advanced" and set value "t_not_exist" to the field "Default Timed Transcript"
When I open tab "Basic" Then I see status message "Timed Transcript Found"
After saving the changes video captions should be visible
When I edit the component I should see status message "Timed Transcript Found"
And I see value "video_name_1" in the field "Default Timed Transcript"
"""
self._create_video_component(subtitles=True, subtitle_id='t_not_exist')
self.edit_component()
self.video.set_url_field('video_name_1.mp4', 1)
self.assertEqual(self.video.message('status'), 'No Timed Transcript')
self.open_advanced_tab()
self.video.set_field_value('Default Timed Transcript', 't_not_exist')
self.open_basic_tab()
self.assertEqual(self.video.message('status'), 'Timed Transcript Found')
self.save_unit_settings()
self.assertTrue(self.video.is_captions_visible())
self.edit_component()
self.assertEqual(self.video.message('status'), 'Timed Transcript Found')
self.assertTrue(self.video.verify_field_value('Default Timed Transcript', 'video_name_1'))
def test_clearing_transcripts_wo_save(self):
"""
Scenario: After clearing Transcripts field in the Advanced tab "not found" message should be visible w/o saving
Given I have created a Video component
After I enter a "t_not_exist.mp4" source to field number 1 I should see status message "No Timed Transcript"
After uploading transcripts "chinese_transcripts.srt" I see message "Timed Transcript Uploaded Successfully"
Open tab "Advanced" and set value "" to the field "Default Timed Transcript"
When I open tab "Basic" I see status message "No Timed Transcript"
After saving the changes video captions should not be visible
When I edit the component I should see status message "No Timed Transcript"
And I see value "" in the field "Default Timed Transcript"
"""
self._create_video_component()
self.edit_component()
self.video.set_url_field('t_not_exist.mp4', 1)
self.assertEqual(self.video.message('status'), 'No Timed Transcript')
self.video.upload_transcript('chinese_transcripts.srt')
self.assertEqual(self.video.message('status'), 'Timed Transcript Uploaded Successfully')
self.open_advanced_tab()
self.video.set_field_value('Default Timed Transcript', '')
self.open_basic_tab()
self.assertEqual(self.video.message('status'), 'No Timed Transcript')
self.save_unit_settings()
self.assertFalse(self.video.is_captions_visible())
self.edit_component()
self.assertEqual(self.video.message('status'), 'No Timed Transcript')
self.assertTrue(self.video.verify_field_value('Default Timed Transcript', ''))
def test_clearing_transcripts_w_save(self):
"""
Scenario: After clearing Transcripts field in the Advanced tab "not found" message should be visible with saving
Given I have created a Video component
After I enter a "t_not_exist.mp4" source to field number 1 I see status message "No Timed Transcript"
After uploading the transcripts "chinese_transcripts.srt" I see message "Timed Transcript Uploaded Successfully"
After saving changes I see "好 各位同学" text in the captions
And I edit the component
Open tab "Advanced" I set value "" to the field "Default Timed Transcript"
When I open tab "Basic" I see status message "No Timed Transcript"
After saving the changes video captions should not be visible
After I edit the component I should see status message "No Timed Transcript"
And I see value "" in the field "Default Timed Transcript"
"""
self._create_video_component()
self.edit_component()
self.video.set_url_field('t_not_exist.mp4', 1)
self.assertEqual(self.video.message('status'), 'No Timed Transcript')
self.video.upload_transcript('chinese_transcripts.srt')
self.assertEqual(self.video.message('status'), 'Timed Transcript Uploaded Successfully')
self.save_unit_settings()
unicode_text = "好 各位同学".decode('utf-8')
self.assertIn(unicode_text, self.video.captions_text)
self.edit_component()
self.open_advanced_tab()
self.video.set_field_value('Default Timed Transcript', '')
self.open_basic_tab()
self.assertEqual(self.video.message('status'), 'No Timed Transcript')
self.save_unit_settings()
self.assertFalse(self.video.is_captions_visible())
self.edit_component()
self.assertEqual(self.video.message('status'), 'No Timed Transcript')
self.assertTrue(self.video.verify_field_value('Default Timed Transcript', ''))
def test_video_w_existing_subtitles(self):
"""
Scenario: Video with existing subs - Advanced tab - change to another one subs -
Basic tab - Found message - Save - see correct subs
Given I have created a Video component with subtitles "t_not_exist"
After I enter a "video_name_1.mp4" source to field number 1 I see status message "No Timed Transcript"
After uploading the transcripts "chinese_transcripts.srt" I see message "Timed Transcript Uploaded Successfully"
After saving the changes video captions should be visible
And I see "好 各位同学" text in the captions
And I edit the component
Open tab "Advanced" And set value "t_not_exist" to the field "Default Timed Transcript"
When I open tab "Basic" I should see status message "Timed Transcript Found"
After saving the changes video captions should be visible
And I see "LILA FISHER: Hi, welcome to Edx." text in the captions
"""
self._create_video_component(subtitles=True, subtitle_id='t_not_exist')
self.edit_component()
self.video.set_url_field('video_name_1.mp4', 1)
self.assertEqual(self.video.message('status'), 'No Timed Transcript')
self.video.upload_transcript('chinese_transcripts.srt')
self.assertEqual(self.video.message('status'), 'Timed Transcript Uploaded Successfully')
self.save_unit_settings()
self.assertTrue(self.video.is_captions_visible())
unicode_text = "好 各位同学".decode('utf-8')
self.assertIn(unicode_text, self.video.captions_text)
self.edit_component()
self.open_advanced_tab()
self.video.set_field_value('Default Timed Transcript', 't_not_exist')
self.open_basic_tab()
self.assertEqual(self.video.message('status'), 'Timed Transcript Found')
self.save_unit_settings()
self.assertTrue(self.video.is_captions_visible())
self.assertIn('LILA FISHER: Hi, welcome to Edx.', self.video.captions_text)
def test_reverting_transcripts(self):
"""
Scenario: After reverting Transcripts field in the Advanced tab "not found" message should be visible
Given I have created a Video component
After I enter a "t_not_exist.mp4" source to field number 1 Then I see status message "No Timed Transcript"
After uploading transcripts "chinese_transcripts.srt" I see message "Timed Transcript Uploaded Successfully"
After saving the changes I should see "好 各位同学" text in the captions
After I edit the component I open tab "Advanced"
And I revert the transcript field "Default Timed Transcript"
After saving the changes video captions should not be visible
After I edit the component I should see status message "No Timed Transcript"
"""
self._create_video_component()
self.edit_component()
self.video.set_url_field('t_not_exist.mp4', 1)
self.assertEqual(self.video.message('status'), 'No Timed Transcript')
self.video.upload_transcript('chinese_transcripts.srt')
self.assertEqual(self.video.message('status'), 'Timed Transcript Uploaded Successfully')
self.save_unit_settings()
unicode_text = "好 各位同学".decode('utf-8')
self.assertIn(unicode_text, self.video.captions_text)
self.edit_component()
self.open_advanced_tab()
self.video.revert_field('Default Timed Transcript')
self.save_unit_settings()
self.assertFalse(self.video.is_captions_visible())
self.edit_component()
self.assertEqual(self.video.message('status'), 'No Timed Transcript')
def test_upload_subtitles_w_different_names2(self):
"""
Scenario: File name and name of subs are different -- Uploading subtitles for file with periods
in it should properly set the transcript name and keep the periods
Given I have created a Video component
After I enter a "video_name_1.1.2.mp4" source to field number 1, I see status message "No Timed Transcript"
After I upload the transcripts file "uk_transcripts.srt" I see message "Timed Transcript Uploaded Successfully"
And I see value "video_name_1.1.2" in the field "Default Timed Transcript"
After saving the changes video captions should be visible
After I edit the component I should see status message "Timed Transcript Found"
"""
self._create_video_component()
self.edit_component()
self.video.set_url_field('video_name_1.1.2.mp4', 1)
self.assertEqual(self.video.message('status'), 'No Timed Transcript')
self.video.upload_transcript('uk_transcripts.srt')
self.assertEqual(self.video.message('status'), 'Timed Transcript Uploaded Successfully')
self.open_advanced_tab()
self.assertTrue(self.video.verify_field_value('Default Timed Transcript', 'video_name_1.1.2'))
self.save_unit_settings()
self.assertTrue(self.video.is_captions_visible())
self.edit_component()
self.assertEqual(self.video.message('status'), 'Timed Transcript Found')
def test_upload_subtitles_w_different_names3(self):
"""
Scenario: Shortened link: File name and name of subs are different
Given I have created a Video component
After I enter a "http://goo.gl/pxxZrg" source to field number 1 Then I see status message "No Timed Transcript"
After I upload the transcripts file "uk_transcripts.srt" I see message "Timed Transcript Uploaded Successfully"
And I see value "pxxZrg" in the field "Default Timed Transcript"
After saving the changes video captions should be visible
After I edit the component I should see status message "Timed Transcript Found"
"""
self._create_video_component()
self.edit_component()
self.video.set_url_field('http://goo.gl/pxxZrg', 1)
self.assertEqual(self.video.message('status'), 'No Timed Transcript')
self.video.upload_transcript('uk_transcripts.srt')
self.assertEqual(self.video.message('status'), 'Timed Transcript Uploaded Successfully')
self.open_advanced_tab()
self.assertTrue(self.video.verify_field_value('Default Timed Transcript', 'pxxZrg'))
self.save_unit_settings()
self.assertTrue(self.video.is_captions_visible())
self.edit_component()
self.assertEqual(self.video.message('status'), 'Timed Transcript Found')
def test_upload_subtitles_w_different_names4(self):
"""
Scenario: Relative link: File name and name of subs are different
Given I have created a Video component
After i enter a "/gizmo.webm" source to field number 1 Then I see status message "No Timed Transcript"
After I upload the transcripts file "uk_transcripts.srt" I see message "Timed Transcript Uploaded Successfully"
And I see value "gizmo" in the field "Default Timed Transcript"
After saving the changes video captions should be visible
After I edit the component I should see status message "Timed Transcript Found"
"""
self._create_video_component()
self.edit_component()
self.video.set_url_field('/gizmo.webm', 1)
self.assertEqual(self.video.message('status'), 'No Timed Transcript')
self.video.upload_transcript('uk_transcripts.srt')
self.assertEqual(self.video.message('status'), 'Timed Transcript Uploaded Successfully')
self.open_advanced_tab()
self.assertTrue(self.video.verify_field_value('Default Timed Transcript', 'gizmo'))
self.save_unit_settings()
self.assertTrue(self.video.is_captions_visible())
self.edit_component()
self.assertEqual(self.video.message('status'), 'Timed Transcript Found')
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment