import unittest import basic.program import basic.toolHandling import test.constants import basic.component import basic.constants as B HOME_PATH = test.constants.HOME_PATH conf = {} class MyTestCase(unittest.TestCase): def runTest(self): self.test_toolhandling() def test_toolhandling(self): job = basic.program.Job("unit") args = {B.PAR_APP: "TEST", B.PAR_ENV: "ENV01", "modus": "unit", "loglevel": "debug", "tool": "config_tool", "modus": "unit"} job.par.setParameterArgs(args) #t = basic.toolHandling.ToolManager() comp = basic.component.Component() comp.name = "testb" comp.conf = {} comp.conf[B.SUBJECT_CONN] = {} comp.conf[B.SUBJECT_CONN][B.TOPIC_NODE_CLI] = {} #self.assertRaises(LookupError, basic.toolHandling.getDbTool, comp) comp = basic.component.Component() comp.name = "testb" comp.conf = {} comp.conf[B.SUBJECT_ARTS] = {} comp.conf[B.SUBJECT_ARTS][B.TOPIC_NODE_API] = {} comp.conf[B.SUBJECT_CONN] = {} comp.conf[B.SUBJECT_CONN][B.TOPIC_NODE_DB] = {} comp.conf[B.SUBJECT_CONN][B.TOPIC_NODE_CLI] = {} comp.conf[B.SUBJECT_CONN][B.TOPIC_NODE_DB][B.ATTR_TYPE] = "mysql" comp.conf[B.SUBJECT_CONN][B.TOPIC_NODE_CLI][B.ATTR_TYPE] = "ssh" tool = basic.toolHandling.getDbTool(comp) self.assertRegex(str(type(tool)), 'dbmysql_tool.DbFcts') tool = basic.toolHandling.getCliTool(comp) self.assertRegex(str(type(tool)), 'clissh_tool.CliFcts') comp.conf[B.SUBJECT_CONN][B.TOPIC_NODE_FILE] = {} comp.conf[B.SUBJECT_CONN][B.TOPIC_NODE_FILE][B.ATTR_TYPE] = "xml" tool = basic.toolHandling.getFileTool(job, comp) self.assertRegex(str(type(tool)), 'filexml_tool.FileFcts') comp.conf[B.SUBJECT_CONN][B.TOPIC_NODE_DB][B.ATTR_TYPE] = "dxx" comp.conf[B.SUBJECT_CONN][B.TOPIC_NODE_CLI][B.ATTR_TYPE] = "sxx" self.assertRaises(FileNotFoundError, basic.toolHandling.getDbTool, comp) self.assertRaises(FileNotFoundError, basic.toolHandling.getCliTool, comp) if __name__ == '__main__': unittest.main()