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)