Ejemplo n.º 1
0
    def _AdvancedMultiRequestExample(self):
        # this is a separate, local client - not 'self.client'
        client = KalturaClient(
            self.config)  # matches line 154 in PythonTester.py
        client.startMultiRequest()

        from KalturaClient.Plugins.Core import KalturaMixEntry
        from KalturaClient.Plugins.Core import KalturaEditorType

        # Request 1
        ks = client.session.start(ADMIN_SECRET, USER_NAME,
                                  KalturaSessionType.ADMIN,
                                  PARTNER_ID, 86400, "")
        # for the current multi request, the result of the first call will be
        # used as the ks for next calls
        client.setKs(ks)

        mixEntry = KalturaMixEntry()
        mixEntry.setName(".Net Mix %s" % (testString,))
        mixEntry.setEditorType(KalturaEditorType.SIMPLE)

        # Request 2
        mixEntry = client.mixing.add(mixEntry)

        # Request 3
        ulFile = getTestFile('DemoVideo.flv')
        uploadTokenId = client.media.upload(ulFile)

        mediaEntry = KalturaMediaEntry()
        mediaEntry.setName("Media Entry For Mix %s" % (testString,))
        mediaEntry.setMediaType(KalturaMediaType.VIDEO)

        # Request 4
        mediaEntry = client.media.addFromUploadedFile(
            mediaEntry, uploadTokenId)

        # Request 5
        client.mixing.appendMediaEntry(mixEntry.id, mediaEntry.id)

        response = client.doMultiRequest()

        for subResponse in response:
            if isinstance(subResponse, KalturaException):
                self.fail("Error occurred: " + subResponse.message)

        # when accessing the response object we will use an index and not the
        # response number (response number - 1)
        assert(isinstance(response[1], KalturaMixEntry))
        mixEntry = response[1]

        print("The new mix entry id is: {}".format(mixEntry.id))
Ejemplo n.º 2
0
    def _AdvancedMultiRequestExample(self):
        # this is a separate, local client - not 'self.client'
        client = KalturaClient(
            self.config)  # matches line 154 in PythonTester.py
        client.startMultiRequest()

        from KalturaClient.Plugins.Core import KalturaMixEntry
        from KalturaClient.Plugins.Core import KalturaEditorType

        # Request 1
        ks = client.session.start(ADMIN_SECRET, USER_NAME,
                                  KalturaSessionType.ADMIN, PARTNER_ID, 86400,
                                  "")
        # for the current multi request, the result of the first call will be
        # used as the ks for next calls
        client.setKs(ks)

        mixEntry = KalturaMixEntry()
        mixEntry.setName(".Net Mix %s" % (testString, ))
        mixEntry.setEditorType(KalturaEditorType.SIMPLE)

        # Request 2
        mixEntry = client.mixing.add(mixEntry)

        # Request 3
        ulFile = getTestFile('DemoVideo.flv')
        uploadTokenId = client.media.upload(ulFile)

        mediaEntry = KalturaMediaEntry()
        mediaEntry.setName("Media Entry For Mix %s" % (testString, ))
        mediaEntry.setMediaType(KalturaMediaType.VIDEO)

        # Request 4
        mediaEntry = client.media.addFromUploadedFile(mediaEntry,
                                                      uploadTokenId)

        # Request 5
        client.mixing.appendMediaEntry(mixEntry.id, mediaEntry.id)

        response = client.doMultiRequest()

        for subResponse in response:
            if isinstance(subResponse, KalturaException):
                self.fail("Error occurred: " + subResponse.message)

        # when accessing the response object we will use an index and not the
        # response number (response number - 1)
        assert (isinstance(response[1], KalturaMixEntry))
        mixEntry = response[1]

        print("The new mix entry id is: {}".format(mixEntry.id))
Ejemplo n.º 3
0
class MultiRequestTests(KalturaBaseTest):

    def setUp(self):
        """These tests require that client.session.start be used
           Instead of self.client.generateSession
           TODO: Document Why
        """

        self.config = GetConfig()
        self.client = KalturaClient(self.config)
        self.ks = None

    def test_MultiRequest(self):
        """From lines 221- 241 of origional PythonTester.py"""

        self.client.startMultiRequest()
        ks = self.client.session.start(ADMIN_SECRET, USER_NAME,
                                       KalturaSessionType.ADMIN,
                                       PARTNER_ID, 86400, "")
        self.client.setKs(ks)

        listResult = self.client.baseEntry.list()

        multiResult = self.client.doMultiRequest()
        print(multiResult[1].totalCount)
        self.client.setKs(multiResult[0])

        # error
        with self.assertRaises(KalturaException) as cm:
            mediaEntry = self.client.media.get('invalid entry id')
        assert(cm.exception.code == 'ENTRY_ID_NOT_FOUND')

        # multi request error
        self.client = KalturaClient(GetConfig())

        # start a NEW multirequest (could move to separate unit test?)
        self.client.startMultiRequest()

        ks = self.client.session.start(
            ADMIN_SECRET, USER_NAME, KalturaSessionType.ADMIN, PARTNER_ID,
            86400, "")
        self.client.setKs(ks)

        mediaEntry = self.client.media.get('invalid entry id')

        multiResult = self.client.doMultiRequest()
        self.client.setKs(multiResult[0])
        assert(isinstance(multiResult[1], KalturaException))
        assert(multiResult[1].code == 'ENTRY_ID_NOT_FOUND')

        # must be called with existing client multirequest session
        self._AdvancedMultiRequestExample()

    # copied from C# tester
    def _AdvancedMultiRequestExample(self):
        # this is a separate, local client - not 'self.client'
        client = KalturaClient(
            self.config)  # matches line 154 in PythonTester.py
        client.startMultiRequest()

        from KalturaClient.Plugins.Core import KalturaMixEntry
        from KalturaClient.Plugins.Core import KalturaEditorType

        # Request 1
        ks = client.session.start(ADMIN_SECRET, USER_NAME,
                                  KalturaSessionType.ADMIN,
                                  PARTNER_ID, 86400, "")
        # for the current multi request, the result of the first call will be
        # used as the ks for next calls
        client.setKs(ks)

        mixEntry = KalturaMixEntry()
        mixEntry.setName(".Net Mix %s" % (testString,))
        mixEntry.setEditorType(KalturaEditorType.SIMPLE)

        # Request 2
        mixEntry = client.mixing.add(mixEntry)

        # Request 3
        ulFile = getTestFile('DemoVideo.flv')
        uploadTokenId = client.media.upload(ulFile)

        mediaEntry = KalturaMediaEntry()
        mediaEntry.setName("Media Entry For Mix %s" % (testString,))
        mediaEntry.setMediaType(KalturaMediaType.VIDEO)

        # Request 4
        mediaEntry = client.media.addFromUploadedFile(
            mediaEntry, uploadTokenId)

        # Request 5
        client.mixing.appendMediaEntry(mixEntry.id, mediaEntry.id)

        response = client.doMultiRequest()

        for subResponse in response:
            if isinstance(subResponse, KalturaException):
                self.fail("Error occurred: " + subResponse.message)

        # when accessing the response object we will use an index and not the
        # response number (response number - 1)
        assert(isinstance(response[1], KalturaMixEntry))
        mixEntry = response[1]

        print("The new mix entry id is: {}".format(mixEntry.id))
Ejemplo n.º 4
0
class MultiRequestTests(KalturaBaseTest):
    def setUp(self):
        """These tests require that client.session.start be used
           Instead of self.client.generateSession
           TODO: Document Why
        """

        self.config = GetConfig()
        self.client = KalturaClient(self.config)
        self.ks = None

    def test_MultiRequest(self):
        """From lines 221- 241 of origional PythonTester.py"""

        self.client.startMultiRequest()
        ks = self.client.session.start(ADMIN_SECRET, USER_NAME,
                                       KalturaSessionType.ADMIN, PARTNER_ID,
                                       86400, "")
        self.client.setKs(ks)

        listResult = self.client.baseEntry.list()

        multiResult = self.client.doMultiRequest()
        print(multiResult[1].totalCount)
        self.client.setKs(multiResult[0])

        # error
        with self.assertRaises(KalturaException) as cm:
            mediaEntry = self.client.media.get('invalid entry id')
        assert (cm.exception.code == 'ENTRY_ID_NOT_FOUND')

        # multi request error
        self.client = KalturaClient(GetConfig())

        # start a NEW multirequest (could move to separate unit test?)
        self.client.startMultiRequest()

        ks = self.client.session.start(ADMIN_SECRET, USER_NAME,
                                       KalturaSessionType.ADMIN, PARTNER_ID,
                                       86400, "")
        self.client.setKs(ks)

        mediaEntry = self.client.media.get('invalid entry id')

        multiResult = self.client.doMultiRequest()
        self.client.setKs(multiResult[0])
        assert (isinstance(multiResult[1], KalturaException))
        assert (multiResult[1].code == 'ENTRY_ID_NOT_FOUND')

        # must be called with existing client multirequest session
        self._AdvancedMultiRequestExample()

    # copied from C# tester
    def _AdvancedMultiRequestExample(self):
        # this is a separate, local client - not 'self.client'
        client = KalturaClient(
            self.config)  # matches line 154 in PythonTester.py
        client.startMultiRequest()

        from KalturaClient.Plugins.Core import KalturaMixEntry
        from KalturaClient.Plugins.Core import KalturaEditorType

        # Request 1
        ks = client.session.start(ADMIN_SECRET, USER_NAME,
                                  KalturaSessionType.ADMIN, PARTNER_ID, 86400,
                                  "")
        # for the current multi request, the result of the first call will be
        # used as the ks for next calls
        client.setKs(ks)

        mixEntry = KalturaMixEntry()
        mixEntry.setName(".Net Mix %s" % (testString, ))
        mixEntry.setEditorType(KalturaEditorType.SIMPLE)

        # Request 2
        mixEntry = client.mixing.add(mixEntry)

        # Request 3
        ulFile = getTestFile('DemoVideo.flv')
        uploadTokenId = client.media.upload(ulFile)

        mediaEntry = KalturaMediaEntry()
        mediaEntry.setName("Media Entry For Mix %s" % (testString, ))
        mediaEntry.setMediaType(KalturaMediaType.VIDEO)

        # Request 4
        mediaEntry = client.media.addFromUploadedFile(mediaEntry,
                                                      uploadTokenId)

        # Request 5
        client.mixing.appendMediaEntry(mixEntry.id, mediaEntry.id)

        response = client.doMultiRequest()

        for subResponse in response:
            if isinstance(subResponse, KalturaException):
                self.fail("Error occurred: " + subResponse.message)

        # when accessing the response object we will use an index and not the
        # response number (response number - 1)
        assert (isinstance(response[1], KalturaMixEntry))
        mixEntry = response[1]

        print("The new mix entry id is: {}".format(mixEntry.id))