Пример #1
0
 def test_get_upload_status(self):
     video = Video(filename='bears.mov', name='STATUS TEST The Bears',
         short_description='Opening roll for an exciting soccer match.')
     video.tags.append('unittest')
     video.save()
     status = video.get_upload_status()
     self.assertEquals(status, enums.UploadStatusEnum.PROCESSING)
Пример #2
0
 def test_delete(self):
     video = Video(filename='bears.mov', name='DELETE TEST The Bears',
         short_description='Opening roll for an exciting soccer match.')
     video.tags.append('unittest')
     video.save()
     video.delete()
     self.assertEquals(video.id, None)
Пример #3
0
 def test_save_update(self):
     video = Video(id=TEST_VIDEO_ID)
     video.tags.append('tag-%s' % self.test_uuid)
     video.tags.append('unittest')
     lmd = video.last_modified_date
     video.save()
     self.assertEquals(video.reference_id, TEST_VIDEO_REF_ID)
     self.assertNotEquals(video.last_modified_date, lmd)
Пример #4
0
 def test_set_image(self):
     video = Video(id=TEST_VIDEO_ID)
     self.assertEquals(video.image, None)
     image = Image(reference_id="img-%s" % self.test_uuid,
                   display_name="My Test Image",
                   type=enums.ImageTypeEnum.VIDEO_STILL)
     video.set_image(image, filename='IMG_0050.JPG')
     self.assertEquals(video.image != None, True)
     self.assertEquals(video.image.id > 0, True)
Пример #5
0
 def test_invalid_video_full_length(self):
     try:
         video = Video(name="Name is too long",
                       short_description="ok desc",
                       filename="somefile.mov")
         video.video_full_length = 10
     except PyBrightcoveError, e:
         self.assertEqual(e.message,
             "Video.video_full_length must be of type Rendition")
Пример #6
0
 def test_invalid_long_description(self):
     try:
         video = Video(name="Name is too long",
                       short_description="ok desc",
                       filename="somefile.mov")
         video.long_description = "Very long"*5000
     except PyBrightcoveError, e:
         self.assertEqual(e.message,
             "Video.long_description must be 5000 characters or less.")
Пример #7
0
 def test_invalid_reference_id(self):
     try:
         video = Video(name="Name is too long",
                       short_description="ok desc",
                       filename="somefile.mov")
         video.reference_id = "long ref id"*100
     except PyBrightcoveError, e:
         self.assertEqual(e.message,
             "Video.reference_id must be 150 characters or less.")
Пример #8
0
    def test_batch_provision_video(self, OpenMockClass, GetSizeMockClass,
        Md5MockClass, FTPMockClass):
        o = OpenMockClass()
        o.read.return_value = None
        m = Md5MockClass()
        m.hexdigest.return_value = 'a78fa9f8asd'
        GetSizeMockClass.return_value = 10000
        f = FTPMockClass()

        ftp = FTPConnection(host='host',
                            user='******',
                            password='******',
                            publisher_id='111111111',
                            preparer='Patrick',
                            report_success=True)
        v = Video(name="Some title",
                  reference_id='a532kallk3252a',
                  short_description="A short description.",
                  connection=ftp)
        v.long_description = "An even longer description"
        v.tags.extend(["blah", "nah", "tag"])
        v.add_asset('1500.flv',
                enums.AssetTypeEnum.VIDEO_FULL, 'High quality rendition',
                encoding_rate=1500000, frame_width=640,
                frame_height=360)
        v.add_asset('700.flv',
                enums.AssetTypeEnum.VIDEO_FULL, 'Medium quality rendition',
                encoding_rate=700000, frame_width=640,
                frame_height=360)
        v.add_asset('poster.png',
                enums.AssetTypeEnum.VIDEO_STILL, 'Poster frame',
                frame_width=640, frame_height=360)
        v.save()

        self.assertEqual('login', f.method_calls[0][0])
        self.assertEqual('set_pasv', f.method_calls[1][0])
        self.assertEqual('storbinary', f.method_calls[2][0])
        self.assertEqual('STOR 1500.flv', f.method_calls[2][1][0])

        self.assertEqual('login', f.method_calls[3][0])
        self.assertEqual('set_pasv', f.method_calls[4][0])
        self.assertEqual('storbinary', f.method_calls[5][0])
        self.assertEqual('STOR 700.flv', f.method_calls[5][1][0])

        self.assertEqual('login', f.method_calls[6][0])
        self.assertEqual('set_pasv', f.method_calls[7][0])
        self.assertEqual('storbinary', f.method_calls[8][0])
        self.assertEqual('STOR poster.png', f.method_calls[8][1][0])

        self.assertEqual('write', o.method_calls[6][0])
        valid_xml = minidom.parse(
            open('test_ftp_video_batch_provision_manifest.xml', 'rb'))
        test_xml = minidom.parseString(o.method_calls[6][1][0])
        self.assertEqual(
            valid_xml.toxml().replace('\t', '').replace('\n', ''),
            test_xml.toxml().replace('\t', '').replace('\n', ''))
Пример #9
0
 def test_invalid_item_state(self):
     try:
         video = Video(name="Name is too long",
                       short_description="ok desc",
                       filename="somefile.mov")
         video.item_state = "Invalid"
     except PyBrightcoveError, e:
         err = "Video.item_state must be either ItemStateEnum.ACTIVE or "
         err += "ItemStateEnum.INACTIVE"
         self.assertEqual(e.message, err)
Пример #10
0
 def test_invalid_economics(self):
     try:
         video = Video(name="Name is too long",
                       short_description="ok desc",
                       filename="somefile.mov")
         video.economics = "The Keynesian view is Wrong"
     except PyBrightcoveError, e:
         err = "Video.economics must be either EconomicsEnum.FREE or"
         err += " EconomicsEnum.AD_SUPPORTED"
         self.assertEqual(e.message, err)
Пример #11
0
 def test_find_modified_filtered(self):
     yesterday = datetime.now() - timedelta(days=1)
     filters = [FilterChoicesEnum.PLAYABLE, FilterChoicesEnum.DELETED]
     videos = Video.find_modified(since=yesterday, filter_list=filters)
     for video in videos:
         self.assertEquals(type(video), Video)
     self.assertEquals(video.id > 0, True)
Пример #12
0
 def test_delete(self):
     playlist = Playlist(name="DELETE - Unit Test Videos", type=PlaylistTypeEnum.EXPLICIT)
     for video in Video.find_by_tags(and_tags=["unittest"]):
         playlist.videos.append(video)
     playlist.save()
     playlist.delete()
     self.assertEquals(playlist.id, None)
Пример #13
0
 def test_save_new(self):
     playlist = Playlist(name="Unit Test Videos",
         type=PlaylistTypeEnum.EXPLICIT)
     for video in Video.find_by_tags(and_tags=['unittest', ]):
         playlist.videos.append(video)
     playlist.save()
     self.assertEquals(playlist.id > 0, True)
Пример #14
0
 def test_find_all(self):
     videos = Video.find_all()
     for video in videos:
         self.assertEquals(type(video), Video)
     self.assertEquals(video.id not in (0, None), True)
     if not video:
         self.fail("Did not find any videos.")
Пример #15
0
 def test_find_by_tags(self):
     videos = Video.find_by_tags(and_tags=['unittest', ])
     for video in videos:
         self.assertEquals(type(video), Video)
         self.assertEquals('unittest' in video.tags, True)
Пример #16
0
 def test_find_by_text(self):
     videos = Video.find_by_text('bear')
     for video in videos:
         self.assertEquals(type(video), Video)
Пример #17
0
 def test_find_by_campaign(self):
     videos = Video.find_by_campaign(988756758)
     for video in videos:
         self.assertEquals(type(video), Video)
Пример #18
0
 def test_save_new(self):
     video = Video(filename='bears.mov', name='The Bears',
         short_description='Opening roll for an exciting soccer match.')
     video.tags.append('unittest')
     video.save()
     self.assertEquals(video.id not in (0, '', None), True)
Пример #19
0
 def test_find_by_user(self):
     videos = Video.find_by_user(12312431)
     for video in videos:
         self.assertEquals(type(video), Video)
Пример #20
0
 def test_find_by_ids(self):
     videos = Video.find_by_ids(TEST_VIDEO_IDS)
     for video in videos:
         self.assertEquals(video.id in TEST_VIDEO_IDS, True)
Пример #21
0
 def test_find_modified_unfiltered(self):
     yesterday = datetime.now() - timedelta(days=1)
     videos = Video.find_modified(since=yesterday)
     for video in videos:
         self.assertEquals(type(video), Video)
         self.assertEquals(video.id > 0, True)
Пример #22
0
 def test_find_related(self):
     video = Video(id=TEST_VIDEO_IDS[1])
     for related_video in video.find_related():
         self.assertEquals(type(related_video), Video)
     self.assertEquals(related_video.id > 0, True)