Data-Test-Executer Framework speziell zum Test von Datenverarbeitungen mit Datengenerierung, Systemvorbereitungen, Einspielungen, ganzheitlicher diversifizierender Vergleich
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

83 lines
2.8 KiB

3 years ago
# functions about connections to other instances
# -------------------------------------------------------------------
"""
"""
3 years ago
import basic.program
3 years ago
import utils.config_tool
import basic.constants as B
2 years ago
import utils.data_const as D
3 years ago
def getConnection(comp, nr):
3 years ago
job = basic.program.Job.getInstance()
3 years ago
verify = job.getDebugLevel("conn_tool")
conn = {}
if job.conf.confs.get("tools").get("connsrc") == D.DFILE_TYPE_YML:
3 years ago
conn = utils.config_tool.getConfig("tool", "conn")
3 years ago
xtypes = None
if ("types" in conn["env"][comp]):
xtypes = conn["env"][comp]["types"]
3 years ago
instnr = "inst" + str(nr)
if conn["env"][comp][instnr]:
3 years ago
if (xtypes is not None):
conn["env"][comp][instnr]["types"] = xtypes
3 years ago
return conn["env"][comp][instnr]
else:
job.m.setFatal("Conn-Tool: Comp not configured " + comp + " " + str(nr))
3 years ago
elif job.conf.confs.get("tools").get("connsrc") == "flaskdb":
3 years ago
pass
elif job.conf.confs.get("tools").get("connsrc") == D.DFILE_TYPE_CSV:
3 years ago
pass
return None
3 years ago
def getConnections(comp):
"""
it reads the connection-attributes for each instances of this component
general attributes are added to the connection-attributes
:param comp:
:return:
"""
3 years ago
job = basic.program.Job.getInstance()
3 years ago
verify = job.getDebugLevel("conn_tool")
2 years ago
msg = None
if hasattr(comp, "m") and comp.m is not None:
msg = comp.m
elif hasattr(job, "m") and job.m is not None:
msg = job.m
else:
raise Exception("message-object is missing")
msg.debug(verify, "getConnections " + comp)
3 years ago
conn = {}
conns = []
if job.conf.confs.get("tools").get("connsrc") in [D.DFILE_TYPE_YML, D.DFILE_TYPE_JSON, D.DFILE_TYPE_CSV]:
3 years ago
conn = utils.config_tool.getConfig("tool", "conn")
if not comp in conn["env"]:
job.m.setFatal("Conn-Tool: Comp not configured " + comp)
3 years ago
elif job.conf.confs.get("tools").get("connsrc") == "flaskdb":
3 years ago
pass
attr = {}
if "general" in conn["env"]:
for a in conn["env"]["general"]:
attr[a] = conn["env"]["general"]
for a in conn["env"][comp]:
if "inst" in a and a != B.SUBJECT_INST:
continue
attr[a] = conn["env"][comp][a]
#if ("types" in conn["env"][comp]):
# xtypes = conn["env"][comp]["types"]
for i in range(conn["env"][comp][B.SUBJECT_INST][B.ATTR_INST_CNT]):
print("range " + str(i + 1))
instnr = "inst" + str(i + 1)
#if (xtypes is not None):
# conn["env"][comp][instnr]["types"] = xtypes
for a in attr:
if a in conn["env"][comp][instnr]:
continue # dont overwrite an instance-specific value
conn["env"][comp][instnr][a] = attr[a]
3 years ago
conns.append(conn["env"][comp][instnr])
3 years ago
return conns