def test_mcm(self): mcm = F.search_client_mcm() clusters = mcm.list_clusters()['clusters'] self.assertEqual(len(clusters), 2) cluster_name = clusters[0]['clusterName'] date = datetime.datetime.now().strftime("%Y-%m-%d-%H-%M-%S") if 'TRAVIS' in os.environ: instance = os.environ['TRAVIS_JOB_NUMBER'] else: instance = 'unknown' python_version = platform.python_version().replace('.', '')[:2] python_version += os.environ.get('TEST_TYPE', '') def user_id(number): return 'python{}-{}-{}-{}'.format(python_version, date, instance, number) mcm.assign_user_id(user_id(0), cluster_name) mcm.assign_user_ids([user_id(1), user_id(2)], cluster_name) def get_user_id(number): while True: try: return mcm.get_user_id(user_id(number)) except RequestException as exception: if exception.status_code != 404: raise exception for number in range(3): self.assertEqual( get_user_id(number), { 'userID': user_id(number), 'clusterName': cluster_name, 'nbRecords': 0, 'dataSize': 0, }) for number in range(3): users_ids = [ user['userID'] for user in mcm.search_user_ids(user_id(number))['hits'] ] # noqa: E501 self.assertIn(user_id(number), users_ids) users = mcm.list_user_ids() self.assertIsInstance(users, dict) self.assertIsInstance(users['userIDs'], list) self.assertTrue(len(users['userIDs']) > 0) users = mcm.get_top_user_ids() self.assertIsInstance(users, dict) self.assertIsInstance(users['topUsers'], dict) self.assertTrue(len(users['topUsers']) > 0) result = None def remove_user_id(number): while True: try: return mcm.remove_user_id(user_id(number)) except RequestException as exception: if exception.status_code != 400: raise exception for number in range(3): remove_user_id(number) def assert_remove(number): while True: try: mcm.get_user_id(user_id(number)) except RequestException as exception: if exception.status_code == 404: return for number in range(3): assert_remove(number) has_pending_mappings = mcm.has_pending_mappings( {'retrieveMappings': True}) self.assertIsNotNone(has_pending_mappings) self.assertIsInstance(has_pending_mappings['pending'], bool) self.assertTrue('clusters' in has_pending_mappings) self.assertIsInstance(has_pending_mappings['clusters'], dict) has_pending_mappings = mcm.has_pending_mappings( {'retrieveMappings': False}) self.assertIsInstance(has_pending_mappings['pending'], bool) self.assertFalse('clusters' in has_pending_mappings) has_pending_mappings = mcm.has_pending_mappings() self.assertIsInstance(has_pending_mappings['pending'], bool) self.assertFalse('clusters' in has_pending_mappings)
def test_mcm(self): mcm = F.search_client_mcm() clusters = mcm.list_clusters()["clusters"] self.assertEqual(len(clusters), 2) cluster_name = clusters[0]["clusterName"] date = datetime.datetime.now().strftime("%Y-%m-%d-%H-%M-%S") if "TRAVIS" in os.environ: instance = os.environ["TRAVIS_JOB_NUMBER"] else: instance = "unknown" python_version = platform.python_version().replace(".", "")[:2] python_version += os.environ.get("TEST_TYPE", "") def user_id(number): return "python{}-{}-{}-{}".format(python_version, date, instance, number) mcm.assign_user_id(user_id(0), cluster_name) mcm.assign_user_ids([user_id(1), user_id(2)], cluster_name) def get_user_id(number): while True: try: return mcm.get_user_id(user_id(number)) except RequestException as exception: if exception.status_code != 404: raise exception for number in range(3): self.assertEqual( get_user_id(number), { "userID": user_id(number), "clusterName": cluster_name, "nbRecords": 0, "dataSize": 0, }, ) for number in range(3): users_ids = [ user["userID"] for user in mcm.search_user_ids(user_id(number))["hits"] ] # noqa: E501 self.assertIn(user_id(number), users_ids) users = mcm.list_user_ids() self.assertIsInstance(users, dict) self.assertIsInstance(users["userIDs"], list) self.assertTrue(len(users["userIDs"]) > 0) users = mcm.get_top_user_ids() self.assertIsInstance(users, dict) self.assertIsInstance(users["topUsers"], dict) self.assertTrue(len(users["topUsers"]) > 0) result = None def remove_user_id(number): while True: try: return mcm.remove_user_id(user_id(number)) except RequestException as exception: if exception.status_code != 400: raise exception for number in range(3): remove_user_id(number) def assert_remove(number): while True: try: mcm.get_user_id(user_id(number)) except RequestException as exception: if exception.status_code == 404: return for number in range(3): assert_remove(number) has_pending_mappings = mcm.has_pending_mappings({"retrieveMappings": True}) self.assertIsNotNone(has_pending_mappings) self.assertIsInstance(has_pending_mappings["pending"], bool) self.assertTrue("clusters" in has_pending_mappings) self.assertIsInstance(has_pending_mappings["clusters"], dict) has_pending_mappings = mcm.has_pending_mappings({"retrieveMappings": False}) self.assertIsInstance(has_pending_mappings["pending"], bool) self.assertFalse("clusters" in has_pending_mappings) has_pending_mappings = mcm.has_pending_mappings() self.assertIsInstance(has_pending_mappings["pending"], bool) self.assertFalse("clusters" in has_pending_mappings) mcm.close()