diff options
author | Hector Fernandez <hector@iatec.biz> | 2020-03-05 18:50:47 +0100 |
---|---|---|
committer | Hector Fernandez <hector@iatec.biz> | 2020-03-05 18:50:47 +0100 |
commit | dd9ffc52507c391271d0821636c683fd7562b46a (patch) | |
tree | af9cffa6c0be8606ea0bb3eda032a170d2b1b6d8 /test-cli/test_main.py | |
parent | a615dac03a9ea7897bf3947ba8d31278b2cea121 (diff) | |
download | board-dd9ffc52507c391271d0821636c683fd7562b46a.zip board-dd9ffc52507c391271d0821636c683fd7562b46a.tar.gz board-dd9ffc52507c391271d0821636c683fd7562b46a.tar.bz2 |
Modified postgre functions.
Diffstat (limited to 'test-cli/test_main.py')
-rw-r--r-- | test-cli/test_main.py | 106 |
1 files changed, 68 insertions, 38 deletions
diff --git a/test-cli/test_main.py b/test-cli/test_main.py index b657f00..8648b6b 100644 --- a/test-cli/test_main.py +++ b/test-cli/test_main.py @@ -10,8 +10,6 @@ from test.helpers.setup_xml import XMLSetup from test.runners.simple import SimpleTestRunner from test.tests.qbutton import Qbutton from test.helpers.syscmd import TestSysCommand -from test.helpers.syscmd import SysCommand -from test.tests.qiperf import QIperf from test.tests.qethernet import Qethernet from test.tests.qaudio import Qaudio from test.tests.qram import Qram @@ -28,7 +26,6 @@ from test.tests.qflash import Qflasher from test.tests.qnand import Qnand from test.helpers.globalVariables import globalVar import socket -import re from test.helpers.iseelogger import ISEE_Logger import logging @@ -43,6 +40,72 @@ def clear(): _ = call('clear' if os.name == 'posix' else 'cls') +def create_paramslist(params): + paramlist = {} + for row in params: + varname, varvalue = row + paramlist[varname] = varvalue + return paramlist + + +def add_test_task(suite, testdefname, paramlist): + testfunc = None + + if testdefname == "AUDIO": + suite.addTest(Qaudio(testdefname, "execute", paramlist)) + elif testdefname == "RAM": + suite.addTest(Qram(testdefname, "execute", paramlist)) + elif testdefname == "SERIALDUAL": + suite.addTest(Qduplex(testdefname, "execute", paramlist)) + elif testdefname == "EEPROM": + suite.addTest(Qeeprom(testdefname, "execute", paramlist)) + elif testdefname == "SERIAL": + suite.addTest(Qserial(testdefname, "execute", paramlist)) + # elif testdefname == "HDMI": + # suite.addTest(Qhdmi(testdefname, "execute", paramlist)) + elif testdefname == "BUTTON": + suite.addTest(Qbutton(testdefname, "execute", paramlist)) + elif testdefname == "RTC": + suite.addTest(Qrtc(testdefname, "execute", paramlist)) + elif testdefname == "CONSUMPTION": + suite.addTest(Qamp(testdefname, "execute", paramlist)) + # elif testdefname == "SATA": + # suite.addTest(Qsata(testdefname, "execute", paramlist)) + elif testdefname == "DMESG": + suite.addTest(TestSysCommand(testdefname, "execute", paramlist)) + elif testdefname == "ETHERNET": + suite.addTest(Qethernet(testdefname, "execute", paramlist)) + elif testdefname == "NAND": + suite.addTest(Qnand(testdefname, "execute", paramlist)) + elif testdefname == "I2C": + suite.addTest(Qi2c(testdefname, "execute", paramlist)) + elif testdefname == "WIFI": + suite.addTest(Qwifi(testdefname, "execute", paramlist)) + elif testdefname == "USB": + suite.addTest(Qusb(testdefname, "execute", paramlist)) + else: + raise Exception("Wrong testdefname") + + +def create_testsuite(): + # create an object TestSuite + suite = unittest.TestSuite() + # get list of tests for this board + tests = psdbObj.get_tests_list(globalVar.g_uuid) + # loop in every test for this board + for row in tests: + testid, testdefname = row + # get params for this test + params = psdbObj.get_test_params_list(testid) + paramlist = create_paramslist(params) + # add test to TestSuite + add_test_task(suite, testdefname, paramlist) + + globalVar.testid_ctl = psdbObj.open_test(globalVar.g_uuid) + + return suite + + def create_board(): model_id = xmlObj.gettagKey('board', 'model') variant = xmlObj.gettagKey('board', 'variant') @@ -56,46 +119,13 @@ def create_board(): processor_id = genDieid(globalVar.g_mid) print(globalVar.g_mid) print(processor_id) - globalVar.g_uuid = psdbObj.create_board(processor_id, model_id, variant, bmac=None) - - -def createvarlist(testvars): - varlist = {} - for row in testvars: - varname, testparam = row - varlist[varname] = testparam - return varlist - - -def testsuite(): - suite = unittest.TestSuite() - tests = psdbObj.getboard_comp_test_list(globalVar.g_uuid) - for row in tests: - testdefname, testfunc = row - testvars = psdbObj.getboard_test_variables(globalVar.g_uuid, testdefname) - varlist = createvarlist(testvars) - command = "suite.addTest({}('{}','execute', varlist))".format(testfunc, testdefname) - exec(command) - - globalVar.testid_ctl = psdbObj.open_testbatch(globalVar.g_uuid, globalVar.station) - return suite - - -def finish_test(): - psdbObj.close_testbatch(globalVar.g_uuid, globalVar.testid_ctl) - # Update Set Test status with FINISH so that status column is not modified because close_testbatch already did it. - psdbObj.update_set_test_row(globalVar.station, globalVar.testid_ctl, globalVar.g_uuid, 'END', 'FINISH') + globalVar.g_uuid = psdbObj.create_board(processor_id, model_id, variant, globalVar.station, bmac=None) def main(): create_board() - try: - os.remove("test_results.dat") - except: - pass runner = SimpleTestRunner(psdbObj) - runner.run(testsuite()) - finish_test() + runner.run(create_testsuite()) if __name__ == "__main__": |