コード例 #1
0
    def setUpClass(cls):
        super(TestCaseEditing, cls).setUpClass()

        cls.editor_pg = editor_page.EditorPage(cls)
        cls.data_utils = data_helpers.DataHelpers()
        cls.video_pg = video_page.VideoPage(cls)
        cls.user = UserFactory.create()
        cls.video_pg.open_page('auth/login/')
        cls.video_pg.log_in(cls.user.username, 'password')
        data = {
            'video_url': 'http://www.youtube.com/watch?v=5CKwCfLUwj4',
            'title': 'Open Source Philosophy'
        }
        url_part = 'videos/'
        r = cls.data_utils.make_request(cls.user, 'post', url_part, **data)
        cls.video, _ = Video.get_or_create_for_url(
            'http://www.youtube.com/watch?v=5CKwCfLUwj4')
        cls.data_utils.add_subs(video=cls.video)
        langs = ['en', 'da', 'ar', 'tr', 'zh-cn', 'nl']
        for lc in langs:
            defaults = {
                'video':
                cls.video,
                'language_code':
                lc,
                'complete':
                True,
                'visibility':
                'public',
                'committer':
                cls.user,
                'subtitles': ('apps/webdriver_testing/subtitle_data/'
                              'Open Source Philosophy.%s.dfxp' % lc)
            }
            cls.data_utils.add_subs(**defaults)
コード例 #2
0
    def setUpClass(cls):
        super(TestCaseTools, cls).setUpClass()
        cls.modal = site_modals.SiteModals(cls)
        cls.data_utils = data_helpers.DataHelpers()
        cls.editor_pg = editor_page.EditorPage(cls)
        cls.video_pg = video_page.VideoPage(cls)
        cls.user = UserFactory()
        cls.video_pg.open_page('auth/login/')
        cls.video_pg.log_in(cls.user.username, 'password')
        cls.video = VideoFactory(
            video_url='http://www.youtube.com/watch?v=5CKwCfLUwj4',
            title='Open Source Philosophy',
            #primary_audio_language_code='en'
        )
        cls.data_utils.add_subs(video=cls.video)
        langs = ['en', 'da', 'nl']

        for lc in langs:
            defaults = {
                'video':
                cls.video,
                'language_code':
                lc,
                'complete':
                True,
                'visibility':
                'public',
                'committer':
                cls.user,
                'subtitles': ('apps/webdriver_testing/subtitle_data/'
                              'Open Source Philosophy.%s.dfxp' % lc)
            }
            cls.data_utils.add_subs(**defaults)
        management.call_command('update_index', interactive=False)
コード例 #3
0
ファイル: test_moderation.py プロジェクト: oaleeapp/EguoWorld
    def setUpClass(cls):
        super(TestCasePublishedVideos, cls).setUpClass()
        cls.data_utils = data_helpers.DataHelpers()
        cls.video_pg = video_page.VideoPage(cls)
        cls.video_lang_pg = video_language_page.VideoLanguagePage(cls)
        cls.create_modal = dialogs.CreateLanguageSelection(cls)
        cls.user = UserFactory(is_partner=True)
        
        #Add a team with workflows, tasks and preferred languages
        cls.logger.info('setup: Create a team with tasks enabled')
        cls.admin = UserFactory()
        cls.manager = UserFactory()
        cls.member = UserFactory()
        cls.team = TeamFactory(admin=cls.admin,
                               manager=cls.manager,
                               member=cls.member,
                               workflow_enabled=True,
                               translate_policy=20,
                               subtitle_policy=20,
                              )
        cls.team_workflow = WorkflowFactory(team = cls.team,
                                            autocreate_subtitle=True,
                                            autocreate_translate=True,
                                            approve_allowed = 10,
                                            review_allowed = 10,
                                           )
        cls.nonmember = UserFactory()

        #Add video to team with published subtitles
        cls.logger.info('Setup: Add video to team with published subs.')
        cls.published = VideoFactory()
        pipeline.add_subtitles(cls.published, 'en', SubtitleSetFactory(),
                               action='publish')
        TeamVideoFactory(team=cls.team, video=cls.published)
        cls.video_pg.open_video_page(cls.published.video_id)
コード例 #4
0
    def setUpClass(cls):
        super(TestCaseVideoResource, cls).setUpClass()
        cls.user = UserFactory.create(username='******')
        cls.data_utils = data_helpers.DataHelpers()

        cls.test_video = cls.data_utils.create_video()
        cls.open_team = TeamMemberFactory.create(
            team__name="Cool team",
            team__slug='team-with-projects',
            team__description='this is the coolest, most creative team ever',
            user=cls.user,
        ).team
        cls.project1 = TeamProjectFactory(
            team=cls.open_team,
            name='team project one',
            slug='team-project-one',
            description='subtitle project number 1',
            guidelines='do a good job',
            workflow_enabled=False)

        cls.project2 = TeamProjectFactory(team=cls.open_team,
                                          name='team project two',
                                          workflow_enabled=True)
        cls.video_pg = video_page.VideoPage(cls)
        cls.watch_pg = watch_page.WatchPage(cls)
コード例 #5
0
 def setUpClass(cls):
     super(TestCaseCreateVideos, cls).setUpClass()
     cls.create_pg = create_page.CreatePage(cls)
     cls.video_pg = video_page.VideoPage(cls)
     cls.create_pg.open_create_page()
     user = UserFactory()
     cls.create_pg.log_in(user.username, 'password')    
コード例 #6
0
    def setUp(self):
        super(TestCaseIncomplete, self).setUp()
        self.data_utils = data_helpers.DataHelpers()
        self.video_pg = video_page.VideoPage(self)
        self.user = UserFactory.create(username = '******')
        self.sub_editor = subtitle_editor.SubtitleEditor(self)
        self.editor_pg = editor_page.EditorPage(self)
        self.modal = site_modals.SiteModals(self)
        td = {'url': ('http://qa.pculture.org/amara_tests/'
                   'Birds_short.webmsd.webm')
             }

        self.test_video = VideoFactory(**td)
        self.video_pg.open_video_page(self.test_video.video_id)
        self.video_pg.log_in(self.user.username, 'password')
        self.video_pg.set_skiphowto()
 
        #Open the video page and sync the first 3 subs
        self.video_pg.add_subtitles()

        self.modal.add_language('English', 'English')
        self.editor_pg.legacy_editor()
        self.logger.info('typing subs')
        self.typed_subs = self.sub_editor.type_subs()
        self.sub_editor.continue_to_next_step()
        
        self.logger.info('syncing subs')
        self.sub_editor.sync_subs(len(self.typed_subs)+2)
        self.timing_list = self.sub_editor.sub_timings()
        self.sub_editor.continue_to_next_step()
        self.logger.info('continue to description screen')
        self.sub_editor.continue_to_next_step()
        self.logger.info('continue to review screen')
        self.sub_editor.continue_to_next_step()
コード例 #7
0
    def setUpClass(cls):
        super(TestCaseModeratedVideoTitles, cls).setUpClass()
        cls.data_utils = data_helpers.DataHelpers()
        cls.admin_video_pg = edit_video_page.EditVideoPage(cls)
        cls.tasks_tab = TasksTab(cls)
        cls.videos_tab = VideosTab(cls)
        cls.video_pg = video_page.VideoPage(cls)

        cls.modal = site_modals.SiteModals(cls)
        cls.editor_pg = editor_page.EditorPage(cls)
        cls.video_lang_pg = video_language_page.VideoLanguagePage(cls)

        cls.staff = UserFactory(is_staff=True, is_superuser=True)
        cls.admin = UserFactory()
        cls.manager = UserFactory()
        cls.member = UserFactory()
        cls.team = TeamFactory(admin=cls.admin,
                               manager=cls.manager,
                               member=cls.member,
                               workflow_type='O',
                               workflow_enabled=True
                              )

        cls.workflow = WorkflowFactory(
            team = cls.team,
            autocreate_subtitle = True,
            autocreate_translate = False,
            review_allowed = 10,
            approve_allowed = 20)
        #Create a member of the team
        cls.subs_file = os.path.join(os.getcwd(), 'apps','webdriver_testing',
                                    'subtitle_data', 'basic_subs.dfxp')
コード例 #8
0
    def test_put_primary(self):
        """Verify video urls for a particular video are listed.

           PUT /api2/partners/videos/[video-id]/urls/[url-id]/
        """
        #Post an additional url to the video
        video_id = self.test_video.video_id
        video_url = self.test_video.get_video_url()
        data = {'url': 'http://unisubs.example.com/newurl.mp4'}
        url_part = 'videos/%s/urls/' % video_id
        r = self.data_utils.make_request(self.user, 'post', url_part, **data)
        response = r.json

        #Put an updated url on the video and set it as primary
        put_url = 'videos/{0}/urls/{1}/'.format(video_id, response['id'])
        put_data = {
            'url': 'http://unisubs.example.com/newerurl.mp4',
            'primary': True
        }

        r = self.data_utils.make_request(self.user, 'put', put_url, **put_data)
        response = r.json

        self.assertEqual('http://unisubs.example.com/newerurl.mp4',
                         response['url'])
        video_pg = video_page.VideoPage(self)
        video_pg.open_video_page(video_id)
        self.assertEqual('http://unisubs.example.com/newerurl.mp4',
                         self.test_video.get_video_url())
コード例 #9
0
    def setUpClass(cls):
        super(TestCaseSubmittable, cls).setUpClass()
        cls.data_utils = data_helpers.DataHelpers()
        cls.editor_pg = editor_page.EditorPage(cls)
        cls.modal = site_modals.SiteModals(cls)
        cls.video_pg = video_page.VideoPage(cls)
        cls.video_language_pg = video_language_page.VideoLanguagePage(cls)

        cls.user = UserFactory.create(username = '******')
        cls.sub_editor = subtitle_editor.SubtitleEditor(cls)
        td = {'video_url': ('http://qa.pculture.org/amara_tests/'
                     'Birds_short.mp4')
             }
        cls.test_video = VideoFactory(**td)
        cls.video_pg.open_video_page(cls.test_video.video_id)
        cls.video_pg.log_in(cls.user.username, 'password')
 
        #Open the video page and sync the first 3 subs
        cls.video_pg.add_subtitles()
        cls.modal.add_language('English', 'English')
        cls.editor_pg.legacy_editor()
        cls.logger.info('typing subs')
        cls.typed_subs = cls.sub_editor.type_subs()
        cls.sub_editor.continue_to_next_step()
        cls.logger.info('syncing subs')
        cls.sub_editor.sync_subs(len(cls.typed_subs)+2)
        cls.timing_list = cls.sub_editor.sub_timings()
        cls.sub_editor.save_and_exit()
コード例 #10
0
    def setUpClass(cls):
        super(TestCaseLeftSide, cls).setUpClass()
        fixt_data = [
                     'apps/webdriver_testing/fixtures/editor_auth.json', 
                     'apps/webdriver_testing/fixtures/editor_videos.json',
                     'apps/webdriver_testing/fixtures/editor_subtitles.json'
        ]
        for f in fixt_data:
            management.call_command('loaddata', f, verbosity=0)
        
        cls.logger.info("""Default Test Data loaded from fixtures

                        English, source primary v2 -> v6
                                 v1 -> deleted

                        Chinese v1 -> v3
                                v3 {"zh-cn": 2, "en": 6}

                        Danish v1 --> v4
                               v4 {"en": 5, "da": 3}
                               
                        Swedish v1 --> v3 FORKED
                                v3 {"sv": 2}
                                v1 --> private

                        Turkish (tr) v1 incomplete {"en": 5}
                       """)
        cls.editor_pg = editor_page.EditorPage(cls)
        cls.data_utils = data_helpers.DataHelpers()
        cls.video_pg = video_page.VideoPage(cls)
        cls.user = UserFactory.create()
        cls.video_pg.open_page('auth/login/', alert_check=True)
        cls.video_pg.log_in(cls.user.username, 'password')
コード例 #11
0
ファイル: test_tools.py プロジェクト: itsbenweeks/Amara
    def setUpClass(cls):
        super(TestCaseTools, cls).setUpClass()
        cls.modal = site_modals.SiteModals(cls)
        cls.user = UserFactory.create()
        data = {
            'url': 'http://www.youtube.com/watch?v=5CKwCfLUwj4',
            'video__title': 'Open Source Philosophy',
            'video__primary_audio_language_code': 'en',
            'type': 'Y'
        }

        cls.data_utils = data_helpers.DataHelpers()
        cls.video = cls.data_utils.create_video(**data)
        subs_data = {
            'language_code': 'en',
            'complete': True,
            'visibility': 'public'
        }

        cls.data_utils.add_subs(video=cls.video, **subs_data)
        management.call_command('update_index', interactive=False)
        cls.editor_pg = editor_page.EditorPage(cls)
        cls.data_utils = data_helpers.DataHelpers()
        cls.video_pg = video_page.VideoPage(cls)
        cls.video_pg.open_page('auth/login/', alert_check=True)
        cls.video_pg.log_in(cls.user.username, 'password')
コード例 #12
0
ファイル: test_revisions.py プロジェクト: Harpreetkk/Amara
 def setUpClass(cls):
     super(TestCaseRevisionNotifications, cls).setUpClass()
     cls.data_utils = data_helpers.DataHelpers()
     cls.user = UserFactory.create()
     cls.video_pg = video_page.VideoPage(cls)
     cls.diffing_pg = diffing_page.DiffingPage(cls)
     cls.video_language_pg = video_language_page.VideoLanguagePage(cls)
     cls.subs_path = os.path.dirname(os.path.abspath(__file__))
コード例 #13
0
ファイル: test_subtitles.py プロジェクト: oaleeapp/EguoWorld
 def setUpClass(cls):
     super(TestCaseSubtitles, cls).setUpClass()
     cls.data_utils = data_helpers.DataHelpers()
     cls.user = UserFactory()
     cls.video_pg = video_page.VideoPage(cls)
     cls.video_language_pg = video_language_page.VideoLanguagePage(cls)
     cls.subs_data_dir = os.path.join(os.getcwd(), 'apps',
                                      'webdriver_testing', 'subtitle_data')
コード例 #14
0
ファイル: test_videos.py プロジェクト: zenny/unisubs
 def setUpClass(cls):
     super(TestCaseVideos, cls).setUpClass()
     management.call_command('flush', interactive=False)
     cls.video_pg = video_page.VideoPage(cls)
     cls.user = UserFactory()
     cls.client = APIClient(enforce_csrf_checks=True)
     for x in range(5):
         VideoFactory()
コード例 #15
0
    def setUpClass(cls):
        super(TestCaseDeleteLast, cls).setUpClass()
        cls.data_utils = data_helpers.DataHelpers()
        cls.editor_pg = editor_page.EditorPage(cls)
        cls.tasks_tab = TasksTab(cls)
        cls.video_pg = video_page.VideoPage(cls)
        cls.watch_pg = watch_page.WatchPage(cls)
        cls.user = UserFactory.create()
        cls.owner = UserFactory.create()
        cls.team = TeamMemberFactory.create(team__workflow_enabled=True,
                                            team__translate_policy=20, #any team
                                            team__subtitle_policy=20, #any team
                                            team__task_assign_policy=10, #any team
                                            user = cls.owner,
                                            ).team
        cls.workflow = WorkflowFactory(team = cls.team,
                                       autocreate_subtitle=True,
                                       autocreate_translate=True,
                                       approve_allowed = 10, # manager
                                       review_allowed = 10, # peer
                                       )
        lang_list = ['en', 'ru', 'pt-br', 'de', 'sv']
        for language in lang_list:
            TeamLangPrefFactory.create(team=cls.team, language_code=language,
                                       preferred=True)

        cls.admin = TeamMemberFactory(role="ROLE_ADMIN",team=cls.team).user
        cls.contributor = TeamMemberFactory(team=cls.team).user
        cls.subs_dir = os.path.join(os.getcwd(), 'apps', 'webdriver_testing', 
                                    'subtitle_data') 
        cls.video, cls.tv = cls.create_source_with_multiple_revisions()
        translation = os.path.join(cls.subs_dir, 'Timed_text.sv.dfxp')
        
        #Upload subs - sv - incomplete, de - reviewed, ru - complete needs review
        cls.logger.info("""Uploading subs to get tasks in various stages: """)
        cls.logger.info("""
                         sv: translation started, incomplete
                         ru: translation submitted, needs review
                         de: translation reviewed, needs approve
                         pt-br: not started
                         """)

        cls._upload_lang(cls.video, translation, 'sv', cls.contributor)
        cls._upload_lang(cls.video, translation, 'de', cls.contributor,
                         complete=True)
        cls.data_utils.complete_review_task(cls.tv, 20, cls.admin)
        cls._upload_lang(cls.video, translation, 'ru', cls.contributor,
                         complete=True)

        cls.logger.info('Setting visibility override on v3 to private')
        cls.en = cls.video.subtitle_language('en')
        en_v3 = cls.en.get_tip(full=True)
        en_v3.visibility_override = 'private'
        en_v3.save() 
        cls.en.clear_tip_cache() 

        cls.tasks_tab.open_page('teams/%s/tasks/?assignee=anyone'
                                 % cls.team.slug)
コード例 #16
0
 def setUpClass(cls):
     super(TestCaseSubtitles, cls).setUpClass()
     cls.user = UserFactory()
     #Create some test data and set subtitle data dir
     cls.subs_data_dir = os.path.join(os.getcwd(), 'apps',
                                      'webdriver_testing', 'subtitle_data')
     cls.video_pg = video_page.VideoPage(cls)
     cls.editor_pg = editor_page.EditorPage(cls)
     cls.video_language_pg = video_language_page.VideoLanguagePage(cls)
コード例 #17
0
 def setUpClass(cls):
     super(TestCaseTimedText, cls).setUpClass()
     cls.user = UserFactory()
     cls.video_pg = video_page.VideoPage(cls)
     cls.video_lang_pg = video_language_page.VideoLanguagePage(cls)
     cls.test_video = VideoFactory()
     cls.subs_data_dir = os.path.join(os.getcwd(), 'apps',
                                      'webdriver_testing', 'subtitle_data')
     cls.video_pg.open_video_page(cls.test_video.video_id)
     cls.video_pg.log_in(cls.user.username, 'password')
コード例 #18
0
 def setUpClass(cls):
     super(TestCaseUserSyncing, cls).setUpClass()
     cls.video_lang_pg = video_language_page.VideoLanguagePage(cls)
     cls.video_pg = video_page.VideoPage(cls)
     cls.vid_owner = UserFactory()
     cls.account = YouTubeAccountFactory(user=cls.vid_owner,
                                         channel_id='test-channel-id')
     cls.video = YouTubeVideoFactory()
     version = pipeline.add_subtitles(cls.video, 'en', SubtitleSetFactory())
     cls.language = version.subtitle_language
     cls.video_url = cls.video.get_primary_videourl_obj()
コード例 #19
0
 def setUpClass(cls):
     super(TestCaseEntryExit, cls).setUpClass()
     cls.sub_editor = subtitle_editor.SubtitleEditor(cls)
     cls.editor_pg = editor_page.EditorPage(cls)
     cls.video_pg = video_page.VideoPage(cls)
     cls.video_lang_pg = video_language_page.VideoLanguagePage(cls)
     cls.data_utils = data_helpers.DataHelpers()
     cls.user = UserFactory.create()
     cls.video_pg.open_page('auth/login/')
     cls.user = UserFactory.create()
     cls.video_pg.log_in(cls.user.username, 'password')
コード例 #20
0
 def setUpClass(cls):
     super(TestCaseUploadTranslation, cls).setUpClass()
     cls.data_utils = data_helpers.DataHelpers()
     cls.user = UserFactory()
     cls.video_pg = video_page.VideoPage(cls)
     cls.video_language_pg = video_language_page.VideoLanguagePage(cls)
     cls.editor_pg = editor_page.EditorPage(cls)
     cls.subs_data_dir = os.path.join(os.getcwd(), 'apps', 
         'webdriver_testing', 'subtitle_data')
     cls.video_pg.open_page('videos/create/')
     cls.video_pg.log_in(cls.user.username, 'password')
コード例 #21
0
 def setUpClass(cls):
     super(TestCaseFollowing, cls).setUpClass()
     cls.data_utils = data_helpers.DataHelpers()
     cls.user = UserFactory.create()
     cls.video_pg = video_page.VideoPage(cls)
     cls.video_language_pg = video_language_page.VideoLanguagePage(cls)
     cls.create_pg = create_page.CreatePage(cls)
     cls.create_pg.open_create_page()
     cls.video = cls.data_utils.create_video_with_subs(cls.user)
     cls.subs_data_dir = os.path.join(os.getcwd(), 'apps',
                                      'webdriver_testing', 'subtitle_data')
     cls.create_pg.open_create_page()
コード例 #22
0
    def setUpClass(cls):
        super(TestCaseViewSubtitles, cls).setUpClass()
        cls.data_utils = data_helpers.DataHelpers()
        cls.menu = unisubs_menu.UnisubsMenu(cls)

        cls.user = UserFactory.create()
        cls.video_pg = video_page.VideoPage(cls)
        cls.video_language_pg = video_language_page.VideoLanguagePage(cls)
        cls.subs_dir = os.path.join(os.getcwd(), 'apps', 'webdriver_testing',
                                    'subtitle_data')
        cls.video = VideoUrlFactory().video
        #Upload original language de
        complete = True
        data = {
            'language_code': 'de',
            'video': cls.video.pk,
            'primary_audio_language_code': 'de',
            'draft': open(os.path.join(cls.subs_dir, 'Timed_text.en.srt')),
            'complete': int(complete)
        }
        cls.data_utils.upload_subs(cls.user, **data)

        #Upload sv, translated from de, complete
        data = {
            'language_code': 'sv',
            'video': cls.video.pk,
            'translated_from': 'de',
            'draft': open(os.path.join(cls.subs_dir, 'Timed_text.sv.dfxp')),
            'is_complete': complete,
            'complete': int(complete)
        }
        cls.data_utils.upload_subs(cls.user, **data)
        complete = False
        #Upload ar, translated from de, incomplete
        data = {
            'language_code': 'ar',
            'video': cls.video.pk,
            'draft': open(os.path.join(cls.subs_dir, 'Timed_text.ar.xml')),
            'is_complete': complete,
            'complete': int(complete)
        }
        cls.data_utils.upload_subs(cls.user, **data)
        #Upload hu, translated from sv, incomplete
        data = {
            'language_code': 'hu',
            'video': cls.video.pk,
            'translated_from': 'sv',
            'draft': open(os.path.join(cls.subs_dir, 'Timed_text.hu.ssa')),
            'is_complete': complete,
            'complete': int(complete)
        }
        cls.data_utils.upload_subs(cls.user, **data)
        cls.video_pg.open_video_page(cls.video.video_id)
コード例 #23
0
 def setUpClass(cls):
     super(TestCaseUntimedText, cls).setUpClass()
     cls.data_utils = data_helpers.DataHelpers()
     cls.user = UserFactory.create(username = '******')
     cls.video_pg = video_page.VideoPage(cls)
     cls.editor_pg = editor_page.EditorPage(cls)
     cls.test_video = VideoUrlFactory().video
     cls.subs_data_dir = os.path.join(os.getcwd(), 'apps', 
         'webdriver_testing', 'subtitle_data')
     cls.video_pg.open_video_page(cls.test_video.video_id)
     cls.video_pg.log_in(cls.user.username, 'password')
     cls.video_pg.set_skiphowto()
コード例 #24
0
ファイル: test_moderation.py プロジェクト: oaleeapp/EguoWorld
    def setUpClass(cls):
        super(TestCaseViewSubtitles, cls).setUpClass()
        cls.data_utils = data_helpers.DataHelpers()
        cls.video_pg = video_page.VideoPage(cls)
        cls.user = UserFactory()
        cls.basic_team = TeamFactory.create(workflow_enabled=False,
                                            translate_policy=20, #any team
                                            subtitle_policy=20, #any team
                                            admin = cls.user,
                                            )

        cls.admin = UserFactory()
        cls.manager = UserFactory()
        cls.member = UserFactory()
        cls.team = TeamFactory(admin=cls.admin,
                               manager=cls.manager,
                               member=cls.member,
                               workflow_enabled=True,
                               translate_policy=20,
                               subtitle_policy=20,
                              )
        cls.workflow = WorkflowFactory(team = cls.team,
                                       autocreate_subtitle=True,
                                       autocreate_translate=True,
                                       approve_allowed = 10, # manager
                                       review_allowed = 10, # peer
                                      )
        lang_list = ['en', 'ru', 'pt-br', 'fr', 'de', 'sv']
        for language in lang_list:
            TeamLangPrefFactory.create(
                team = cls.team,
                language_code = language,
                preferred = True)                       

        #Create en source language 2 revisions - approved.
        cls.video, cls.tv = cls._add_team_video()
        cls._upload_subtitles(cls.video, 'en', cls.member, 
                              complete=False)
        cls._upload_subtitles(cls.video, 'en', cls.member)
        cls.data_utils.complete_review_task(cls.tv, 20, cls.admin)
        cls.data_utils.complete_approve_task(cls.tv, 20, cls.admin)
       
        #Add sv translation, reviewed
        cls._upload_subtitles(cls.video, 'sv', cls.member)
        cls.data_utils.complete_review_task(cls.tv, 20, cls.admin)

        #Add de translation complete waiting review
        cls._upload_subtitles(cls.video, 'de', cls.member)

        #Add ru translation, incomplete.
        cls._upload_subtitles(cls.video, 'ru', cls.member, 
                                complete=False)
コード例 #25
0
    def setUpClass(cls):
        super(TestCaseComments, cls).setUpClass()
        cls.data_utils = data_helpers.DataHelpers()
        cls.user = UserFactory.create()
        cls.user2 = UserFactory.create()
        cls.video_pg = video_page.VideoPage(cls)
        cls.video_language_pg = video_language_page.VideoLanguagePage(cls)
        cls.video = cls.data_utils.create_video_with_subs(cls.user)

        cls.video_pg.open_video_page(cls.video.video_id)
        cls.video_pg.log_in(cls.user2.username, 'password')
        cls.video_pg.open_video_page(cls.video.video_id)
        cls.video_pg.toggle_follow()
コード例 #26
0
    def setUpClass(cls):
        super(TestCaseSubtitlesUpload, cls).setUpClass()
        cls.data_utils = data_helpers.DataHelpers()
        cls.user = UserFactory.create()

        #Create some test data and set subtitle data dir
        cls.test_video = cls.data_utils.create_video()
        cls.subs_data_dir = os.path.join(os.getcwd(), 'apps',
                                         'webdriver_testing', 'subtitle_data')

        cls.video_pg = video_page.VideoPage(cls)
        cls.editor_pg = editor_page.EditorPage(cls)
        cls.video_language_pg = video_language_page.VideoLanguagePage(cls)
        cls.video_language_pg.set_skiphowto()
コード例 #27
0
    def test_list(self):
        """Verify video urls for a particular video are listed.

        GET /api2/partners/videos/[video-id]/urls/
        """
        video_id = self.test_video.video_id
        video_url = self.test_video.get_video_url()
        url_part = 'videos/%s/urls/' % video_id

        r = self.data_utils.make_request(self.user, 'get', url_part)
        response = r.json
        video_pg = video_page.VideoPage(self)
        video_pg.open_video_page(video_id)

        self.assertEqual(video_url, response['objects'][0]['url'])
コード例 #28
0
    def setUpClass(cls):
        super(TestCaseDraftVideos, cls).setUpClass()
        cls.data_utils = data_helpers.DataHelpers()
        cls.video_pg = video_page.VideoPage(cls)
        cls.video_lang_pg = video_language_page.VideoLanguagePage(cls)
        cls.menu = unisubs_menu.UnisubsMenu(cls)
        cls.create_modal = dialogs.CreateLanguageSelection(cls)

        cls.user = UserFactory(username='******', is_partner=True)

        #Add a team with workflows, tasks and preferred languages
        cls.logger.info('setup: Create a team with tasks enabled')
        cls.team = TeamMemberFactory.create(
            team__workflow_enabled=True,
            team__subtitle_policy=20,
            team__translate_policy=20,
            user=cls.user,
        ).team
        cls.team_workflow = WorkflowFactory(
            team=cls.team,
            autocreate_subtitle=True,
            autocreate_translate=True,
            approve_allowed=10,
            review_allowed=10,
        )
        cls.member = TeamMemberFactory.create(
            role="ROLE_CONTRIBUTOR",
            team=cls.team,
            user=UserFactory(username='******')).user
        cls.nonmember = UserFactory()

        #Add video to team with draft subtitles
        cls.logger.info('Setup: Add video to team with draft subs.')
        cls.draft = TeamVideoFactory.create(
            team=cls.team,
            video=cls.data_utils.create_video(),
            added_by=cls.user).video
        data = {
            'visibility': 'private',
            'video': cls.draft,
            'committer': cls.user
        }
        cls.data_utils.add_subs(**data)
        cls.video_pg.open_video_page(cls.draft.video_id)
コード例 #29
0
    def setUpClass(cls):
        super(TestCaseViewSubtitles, cls).setUpClass()
        cls.data_utils = data_helpers.DataHelpers()
        cls.user = UserFactory()
        cls.video_pg = video_page.VideoPage(cls)
        cls.video_language_pg = video_language_page.VideoLanguagePage(cls)
        cls.subs_dir = os.path.join(os.getcwd(), 'apps', 'webdriver_testing',
                                    'subtitle_data')
        cls.video = VideoFactory(primary_audio_language_code='de')
        #Upload original language de
        data = {
            'language_code': 'de',
            'video': cls.video,
            'subtitles': 'apps/webdriver_testing/subtitle_data/'
            'Timed_text.en.srt',
            'complete': True,
            'author': cls.user,
            'committer': cls.user
        }
        cls.data_utils.add_subs(**data)

        #Upload sv, translated from de, complete
        data = {
            'language_code': 'sv',
            'video': cls.video,
            'subtitles': 'apps/webdriver_testing/subtitle_data/'
            'Timed_text.sv.dfxp',
            'complete': True,
            'author': cls.user,
            'committer': cls.user
        }
        cls.data_utils.add_subs(**data)
        #Upload hu, translated from sv, incomplete
        data = {
            'language_code': 'hu',
            'video': cls.video,
            'subtitles': 'apps/webdriver_testing/subtitle_data/'
            'Timed_text.hu.ssa',
            'complete': False,
            'author': cls.user,
            'committer': cls.user
        }
        cls.data_utils.add_subs(**data)
        cls.video_pg.open_video_page(cls.video.video_id)
コード例 #30
0
 def setUp(self):
     super(TestCaseTranscribing, self).setUp()
     self.data_utils = data_helpers.DataHelpers()
     self.modal = site_modals.SiteModals(self)
     self.editor_pg = editor_page.EditorPage(self)
     td = {
         'video_url': ('http://qa.pculture.org/amara_tests/'
                       'Birds_short.webmsd.webm')
     }
     self.test_video = self.data_utils.create_video(**td)
     self.video_pg = video_page.VideoPage(self)
     self.user = UserFactory.create()
     self.video_pg.open_video_page(self.test_video.video_id)
     self.video_pg.log_in(self.user.username, 'password')
     self.sub_editor = subtitle_editor.SubtitleEditor(self)
     self.video_pg.log_in(self.user.username, 'password')
     self.video_pg.add_subtitles()
     self.modal.add_language('English', 'English')
     self.editor_pg.legacy_editor()
     self.typed_subs = self.sub_editor.type_subs()