[RIC-573] Refactoring automation in order to support K8S environment
[ric-plt/e2mgr.git] / Automation / Tests / Scripts / e2mdbscripts.py
index b209ea3..abc46e2 100644 (file)
 import config
 import json
 import redis
+import variables
 
 
-def getRedisClientDecodeResponse():
+def get_redis_client_decode_response():
     c = config.redis_ip_address
     p = config.redis_ip_port
     return redis.Redis(host=c, port=p, db=0, decode_responses=True)
 
 
-def verify_ran_is_associated_with_e2t_instance(ranName, e2tAddress):
-    r = getRedisClientDecodeResponse()
-    e2tInstanceJson = r.get("{e2Manager},E2TInstance:" + e2tAddress)
-    e2tInstanceDic = json.loads(e2tInstanceJson)
-    assocRanList = e2tInstanceDic.get("associatedRanList")
-    return ranName in assocRanList
+def verify_ran_is_associated_with_e2t_instance(ran_name, e2t_address):
+    r = get_redis_client_decode_response()
+    e2t_instance_json = r.get("{e2Manager},E2TInstance:" + e2t_address)
 
+    if e2t_instance_json is None:
+        return False
 
-def verify_e2t_instance_has_no_associated_rans(e2tAddress):
-    r = getRedisClientDecodeResponse()
-    e2tInstanceJson = r.get("{e2Manager},E2TInstance:" + e2tAddress)
-    e2tInstanceDic = json.loads(e2tInstanceJson)
-    assocRanList = e2tInstanceDic.get("associatedRanList")
-    return not assocRanList
+    e2t_instance_dic = json.loads(e2t_instance_json)
+    assoc_ran_list = e2t_instance_dic.get("associatedRanList")
+    if assoc_ran_list is None:
+        return False
+    else:
+        return ran_name in assoc_ran_list
 
 
-def verify_e2t_instance_exists_in_addresses(e2tAddress):
-    r = getRedisClientDecodeResponse()
-    e2tAddressesJson = r.get("{e2Manager},E2TAddresses")
-    e2tAddresses = json.loads(e2tAddressesJson)
-    return e2tAddress in e2tAddresses
+def verify_e2t_instance_has_no_associated_rans(e2t_address):
+    r = get_redis_client_decode_response()
+    e2t_instance_json = r.get("{e2Manager},E2TInstance:" + e2t_address)
+    e2t_instance_dic = json.loads(e2t_instance_json)
+    assoc_ran_list = e2t_instance_dic.get("associatedRanList")
+    return not assoc_ran_list
 
 
-def verify_e2t_instance_key_exists(e2tAddress):
-    r = getRedisClientDecodeResponse()
-    return r.exists("{e2Manager},E2TInstance:" + e2tAddress)
+def verify_e2t_instance_exists_in_addresses(e2t_address):
+    r = get_redis_client_decode_response()
+    e2t_addresses_json = r.get("{e2Manager},E2TAddresses")
+    e2t_addresses = json.loads(e2t_addresses_json)
+    return e2t_address in e2t_addresses
+
+
+def verify_e2t_instance_key_exists(e2t_address):
+    r = get_redis_client_decode_response()
+    return r.exists("{e2Manager},E2TInstance:" + e2t_address)
 
 
 def populate_e2t_instances_in_e2m_db_for_get_e2t_instances_tc():
-    r = getRedisClientDecodeResponse()
+    r = get_redis_client_decode_response()
     r.set("{e2Manager},E2TAddresses", "[\"e2t.att.com:38000\"]")
     r.set("{e2Manager},E2TInstance:e2t.att.com:38000",
-          "{\"address\":\"e2t.att.com:38000\",\"associatedRanList\":[\"test1\",\"test2\",\"test3\"],\"keepAliveTimestamp\":1577619310484022369,\"state\":\"ACTIVE\"}")
+          "{\"address\":\"e2t.att.com:38000\",\"associatedRanList\":[\"test1\",\"test2\",\"test3\"],"
+          "\"keepAliveTimestamp\":1577619310484022369,\"state\":\"ACTIVE\"}")
+    return True
+
+
+def verify_e2t_addresses_for_e2t_initialization_tc():
+    r = get_redis_client_decode_response()
+
+    value = "[\"{}\"]".format(variables.e2t_alpha_address)
+
+    return r.get("{e2Manager},E2TAddresses") == value
+
+
+def verify_e2t_instance_for_e2t_initialization_tc():
+    r = get_redis_client_decode_response()
+
+    e2_address = "\"address\":\"{}\"".format(variables.e2t_alpha_address)
+    e2_associated_ran_list = "\"associatedRanList\":[]"
+    e2_state = "\"state\":\"ACTIVE\""
+
+    e2_db_instance = r.get("{{e2Manager}},E2TInstance:{}".format(variables.e2t_alpha_address))
+
+    if e2_db_instance.find(e2_address) < 0:
+        return False
+    if e2_db_instance.find(e2_associated_ran_list) < 0:
+        return False
+    if e2_db_instance.find(e2_state) < 0:
+        return False
+
     return True
 
 
 def set_enable_ric_false():
-    r = getRedisClientDecodeResponse()
+    r = get_redis_client_decode_response()
     r.set("{e2Manager},GENERAL", "{\"enableRic\":false}")
     return True
+