コード例 #1
0
ファイル: liveservertests.py プロジェクト: ajenta/oydiv-rpc
    def setUp(self):  # NOQA
        self.host = TEST_HOST['hostname']
        self.user = TEST_HOST['user']
        self.admin_password = TEST_HOST['admin_password']
        self.prefix = TEST_HOST['prefix']
        self.ssl = TEST_HOST['ssl']
        self.member = PortalMember(
            name=random_ascii_letters(16),
            password=random_ascii_letters(),
            displayName='Automated Test User - to be deleted',
            extension=self.prefix + str(random_extension())[:6],
            emailAddress='*****@*****.**',
            description='Automated Test User - to be deleted',
        )

        self.admin = User(
            host=self.host,
            user=self.user,
            password=self.admin_password,
            api_type='admin',
            member=self.member,
            ssl=self.ssl
        )

        self.admin.create()

        self.u = User(
            host=self.host,
            user=self.member.name,
            password=self.member.password,
            api_type='user',
            ssl=self.ssl
        )
コード例 #2
0
ファイル: liveservertests.py プロジェクト: ajenta/oydiv-rpc
 def test_entity_type(self):
     u = User(
         self.host,
         user=self.member.name,
         password=self.member.password,
         api_type='user',
         ssl=self.ssl
     )
     u._user_service.getEntityByEntityID(u.entity_id())
コード例 #3
0
ファイル: liveservertests.py プロジェクト: ajenta/oydiv-rpc
 def test_join_new_private_room(self):
     details = {
         'user': self.member.name,
         'password': self.member.password,
         'api_type': 'user',
         'ssl': self.ssl
     }
     user = User(self.host, **details)
     requests.get(user.vidyodesktop_login_string())
     eid = requests.get('http://127.0.0.1:63457/?retrieve=eid').text
     room = user.create_private_room(self.prefix)
     user.join_room(user, eid, pin=room['pin'], room_id=room['room_id'])
     time.sleep(10)
     user.log_out()
コード例 #4
0
ファイル: liveservertests.py プロジェクト: ajenta/oydiv-rpc
    def test_join_room(self):
        details = {
            'user': self.member.name,
            'password': self.member.password,
            'api_type': 'user',
            'ssl': self.ssl
        }
        step1 = User(self.host, **details)
        getvideo = step1.vidyodesktop_login_string()
        requests.get(getvideo)
        eid = requests.get('http://127.0.0.1:63457/?retrieve=eid').text
        del step1

        step2 = User(self.host, **details)
        step3 = User(self.host, **details)
        step2.join_room(step3, eid)
        del step2
        del step3
        step4 = User(self.host, **details)
        time.sleep(10)
        step4.log_out()
コード例 #5
0
ファイル: liveservertests.py プロジェクト: ajenta/oydiv-rpc
    def test_user_doesnt_exist_yet_entity_idraises(self):
        self.admin.delete()
        self.member = PortalMember(
            name=random_ascii_letters(16),
            password=random_ascii_letters(),
            displayName='Automated Test User - to be deleted',
            extension=self.prefix + str(random_extension())[:6],
            emailAddress='*****@*****.**',
            description='Automated Test User - to be deleted',
        )

        self.admin = User(
            host=self.host,
            user=self.user,
            password=self.admin_password,
            api_type='admin',
            member=self.member,
            ssl=self.ssl
        )
        with self.assertRaises(DoesNotExist):
            self.admin.entity_id()
コード例 #6
0
ファイル: liveservertests.py プロジェクト: ajenta/oydiv-rpc
class UserLiveServerTestUser(unittest.TestCase):
    def setUp(self):  # NOQA
        self.host = TEST_HOST['hostname']
        self.user = TEST_HOST['user']
        self.admin_password = TEST_HOST['admin_password']
        self.prefix = TEST_HOST['prefix']
        self.ssl = TEST_HOST['ssl']
        self.member = PortalMember(
            name=random_ascii_letters(16),
            password=random_ascii_letters(),
            displayName='Automated Test User - to be deleted',
            extension=self.prefix + str(random_extension())[:6],
            emailAddress='*****@*****.**',
            description='Automated Test User - to be deleted',
        )

        self.admin = User(
            host=self.host,
            user=self.user,
            password=self.admin_password,
            api_type='admin',
            member=self.member,
            ssl=self.ssl
        )

        self.admin.create()

        self.u = User(
            host=self.host,
            user=self.member.name,
            password=self.member.password,
            api_type='user',
            ssl=self.ssl
        )

    def tearDown(self):  # NOQA
        try:
            self.admin.delete()
        except (Error, DoesNotExist):
            pass

    def test_endpoint_login_dict_type(self):
        login = self.u._endpoint_login_dict()
        self.assertIsInstance(login, dict)

    def test_endpoint_login_dict_keys(self):
        login = self.u._endpoint_login_dict()
        self.assertIn('portalAddress', login)
        self.assertIn('vmIdentity', login)
        self.assertIn('portalAccessKey', login)
        # TODO

    def test_call_vidyodesktop(self):
        getvideo = self.u.vidyodesktop_login_string()
        f = requests.get(getvideo)
        del f
        eid = requests.get('http://127.0.0.1:63457/?retrieve=eid').text.lstrip('eid=')
        self.u._user_service.linkEndpoint(eid)
        self.u._user_service.joinConference(self.u.entity_id())
        self.u._user_service.logOut()

    def test_my_account(self):
        acc = self.u._my_account()
        self.assertTrue(hasattr(acc, 'entityID'))

    def test_entity_type(self):
        u = User(
            self.host,
            user=self.member.name,
            password=self.member.password,
            api_type='user',
            ssl=self.ssl
        )
        u._user_service.getEntityByEntityID(u.entity_id())

    def test_portal_version(self):
        major, minor, micro, patch, db = self.u.portal_version_info()
        self.assertIn(major, (2, 3))
        self.assertIsInstance(major, int)
        self.assertIsInstance(minor, int)
        self.assertIsInstance(micro, int)

    def test_entity_id(self):
        self.assertIsInstance(self.u.entity_id(), int)

    def test_owns_room_own_room(self):
        self.assertTrue(self.admin.owns_room(self.u.entity_id()))

    def test_owns_room_other_false(self):
        self.assertFalse(self.admin.owns_room(0 - self.u.entity_id()))

    def test_user_doesnt_exist_deleted_raises(self):
        # The user has not been created at this point
        self.admin.delete()
        with self.assertRaises(Exception):  # suds throws an Exception() on 401
            self.u.entity_id()

    def test_user_doesnt_exist_yet_entity_idraises(self):
        self.admin.delete()
        self.member = PortalMember(
            name=random_ascii_letters(16),
            password=random_ascii_letters(),
            displayName='Automated Test User - to be deleted',
            extension=self.prefix + str(random_extension())[:6],
            emailAddress='*****@*****.**',
            description='Automated Test User - to be deleted',
        )

        self.admin = User(
            host=self.host,
            user=self.user,
            password=self.admin_password,
            api_type='admin',
            member=self.member,
            ssl=self.ssl
        )
        with self.assertRaises(DoesNotExist):
            self.admin.entity_id()

    def test_new_user_idle(self):
        """As the user is created moments ago,
        it should be idle as no VidyoClient can have registered yet"""
        self.assertEqual(self.u.status(), User.USER_OFFLINE)
コード例 #7
0
ファイル: liveservertests.py プロジェクト: ajenta/oydiv-rpc
class UserLiveServerTestAdmin(unittest.TestCase):
    def setUp(self):  # NOQA
        self.host = TEST_HOST['hostname']
        self.user = TEST_HOST['admin']
        self.password = TEST_HOST['admin_password']
        self.prefix = TEST_HOST['prefix']
        self.member = PortalMember(
            name=random_ascii_letters(16),
            password=random_ascii_letters(),
            displayName='Automated Test User - to be deleted',
            extension=self.prefix + str(random_extension())[:6],
            emailAddress='*****@*****.**',
            description='h'
        )

        self.ssl = TEST_HOST['ssl']
        self.u = User(
            host=self.host,
            user=self.user,
            password=self.password,
            api_type='admin',
            member=self.member,
            ssl=self.ssl
        )

    def tearDown(self):  # NOQA
        try:
            self.u.delete()
        except (DoesNotExist, Error):
            pass

    def test_entity_id(self):
        self.u.create()
        self.assertIsInstance(self.u.entity_id(), int)

    def test_create_member_entity_id(self):
        self.assertIsInstance(self.u.create(), int)

    def test_rooms(self):
        rooms = self.u.all_room_ids()
        for room in rooms:
            self.assertIsInstance(room, int)

    def test_username_create(self):
        self.u.create()
        self.assertEqual(self.u.username(), self.member.name)

    def test_username_no_create(self):
        del self.u.member
        with self.assertRaises(Error):
            self.u.username()

    def test_update_member(self):
        pass
コード例 #8
0
ファイル: liveservertests.py プロジェクト: ajenta/oydiv-rpc
class UserEndToEndTests(unittest.TestCase):
    def setUp(self):  # NOQA
        self.host = TEST_HOST['hostname']
        self.user = TEST_HOST['user']
        self.admin_password = TEST_HOST['admin_password']
        self.ssl = TEST_HOST['ssl']
        self.prefix = TEST_HOST['prefix']
        self.member = PortalMember(
            name=random_ascii_letters(16),
            password=random_ascii_letters(),
            displayName='Automated Test User - to be deleted',
            extension=self.prefix + str(random_extension())[:6],
            emailAddress='*****@*****.**',
            description='h'
        )
        self.password = self.member.password

        self.admin = User(
            host=self.host,
            user=self.user,
            password=self.admin_password,
            api_type='admin',
            member=self.member,
            ssl=self.ssl
        )

        self.admin.create()

        self.u = User(
            host=self.host,
            user=self.member.name,
            password=self.password,
            api_type='user',
            ssl=self.ssl
        )

    def tearDown(self):  # NOQA
        self.admin.delete()

    def test_join_room(self):
        details = {
            'user': self.member.name,
            'password': self.member.password,
            'api_type': 'user',
            'ssl': self.ssl
        }
        step1 = User(self.host, **details)
        getvideo = step1.vidyodesktop_login_string()
        requests.get(getvideo)
        eid = requests.get('http://127.0.0.1:63457/?retrieve=eid').text
        del step1

        step2 = User(self.host, **details)
        step3 = User(self.host, **details)
        step2.join_room(step3, eid)
        del step2
        del step3
        step4 = User(self.host, **details)
        time.sleep(10)
        step4.log_out()

    def test_join_new_private_room(self):
        details = {
            'user': self.member.name,
            'password': self.member.password,
            'api_type': 'user',
            'ssl': self.ssl
        }
        user = User(self.host, **details)
        requests.get(user.vidyodesktop_login_string())
        eid = requests.get('http://127.0.0.1:63457/?retrieve=eid').text
        room = user.create_private_room(self.prefix)
        user.join_room(user, eid, pin=room['pin'], room_id=room['room_id'])
        time.sleep(10)
        user.log_out()