diff options
Diffstat (limited to 'meta/classes/imagetest-qemu.bbclass')
| -rw-r--r-- | meta/classes/imagetest-qemu.bbclass | 33 |
1 files changed, 28 insertions, 5 deletions
diff --git a/meta/classes/imagetest-qemu.bbclass b/meta/classes/imagetest-qemu.bbclass index 28bb218272..8301df8452 100644 --- a/meta/classes/imagetest-qemu.bbclass +++ b/meta/classes/imagetest-qemu.bbclass | |||
| @@ -5,7 +5,9 @@ TEST_LOG ?= "${LOG_DIR}/qemuimagetests" | |||
| 5 | TEST_RESULT ?= "${TEST_DIR}/result" | 5 | TEST_RESULT ?= "${TEST_DIR}/result" |
| 6 | TEST_TMP ?= "${TEST_DIR}/tmp" | 6 | TEST_TMP ?= "${TEST_DIR}/tmp" |
| 7 | TEST_SCEN ?= "sanity" | 7 | TEST_SCEN ?= "sanity" |
| 8 | SHARE_IMAGE ?= "1" | 8 | TEST_STATUS ?= "${TEST_TMP}/status" |
| 9 | TARGET_IPSAVE ?= "${TEST_TMP}/target_ip" | ||
| 10 | TEST_SERIALIZE ?= "1" | ||
| 9 | 11 | ||
| 10 | python do_qemuimagetest() { | 12 | python do_qemuimagetest() { |
| 11 | qemuimagetest_main(d) | 13 | qemuimagetest_main(d) |
| @@ -35,6 +37,17 @@ def qemuimagetest_main(d): | |||
| 35 | machine = bb.data.getVar('MACHINE', d, 1) | 37 | machine = bb.data.getVar('MACHINE', d, 1) |
| 36 | pname = bb.data.getVar('PN', d, 1) | 38 | pname = bb.data.getVar('PN', d, 1) |
| 37 | 39 | ||
| 40 | """function to save test cases running status""" | ||
| 41 | def teststatus(test, status, index, length): | ||
| 42 | test_status = bb.data.getVar('TEST_STATUS', d, 1) | ||
| 43 | if not os.path.exists(test_status): | ||
| 44 | raise bb.build.FuncFailed("No test status file existing under TEST_TMP") | ||
| 45 | |||
| 46 | f = open(test_status, "w") | ||
| 47 | f.write("\t%-15s%-15s%-15s%-15s\n" % ("Case", "Status", "Number", "Total")) | ||
| 48 | f.write("\t%-15s%-15s%-15s%-15s\n" % (case, status, index, length)) | ||
| 49 | f.close() | ||
| 50 | |||
| 38 | """funtion to run each case under scenario""" | 51 | """funtion to run each case under scenario""" |
| 39 | def runtest(scen, case, fulltestpath): | 52 | def runtest(scen, case, fulltestpath): |
| 40 | resultpath = bb.data.getVar('TEST_RESULT', d, 1) | 53 | resultpath = bb.data.getVar('TEST_RESULT', d, 1) |
| @@ -56,11 +69,13 @@ def qemuimagetest_main(d): | |||
| 56 | os.environ["DISPLAY"] = bb.data.getVar("DISPLAY", d, True) | 69 | os.environ["DISPLAY"] = bb.data.getVar("DISPLAY", d, True) |
| 57 | os.environ["POKYBASE"] = bb.data.getVar("POKYBASE", d, True) | 70 | os.environ["POKYBASE"] = bb.data.getVar("POKYBASE", d, True) |
| 58 | os.environ["TOPDIR"] = bb.data.getVar("TOPDIR", d, True) | 71 | os.environ["TOPDIR"] = bb.data.getVar("TOPDIR", d, True) |
| 59 | os.environ["SHARE_IMAGE"] = bb.data.getVar("SHARE_IMAGE", d, True) | 72 | os.environ["TEST_STATUS"] = bb.data.getVar("TEST_STATUS", d, True) |
| 73 | os.environ["TARGET_IPSAVE"] = bb.data.getVar("TARGET_IPSAVE", d, True) | ||
| 74 | os.environ["TEST_SERIALIZE"] = bb.data.getVar("TEST_SERIALIZE", d, True) | ||
| 60 | 75 | ||
| 61 | """run Test Case""" | 76 | """run Test Case""" |
| 62 | bb.note("Run %s test in scenario %s" % (case, scen)) | 77 | bb.note("Run %s test in scenario %s" % (case, scen)) |
| 63 | os.system("%s | tee -a %s" % (fulltestpath, caselog)) | 78 | os.system("%s" % fulltestpath) |
| 64 | 79 | ||
| 65 | """Generate testcase list in runtime""" | 80 | """Generate testcase list in runtime""" |
| 66 | def generate_list(testlist): | 81 | def generate_list(testlist): |
| @@ -119,7 +134,13 @@ def qemuimagetest_main(d): | |||
| 119 | 134 | ||
| 120 | tmppath = bb.data.getVar('TEST_TMP', d, 1) | 135 | tmppath = bb.data.getVar('TEST_TMP', d, 1) |
| 121 | bb.utils.mkdirhier(tmppath) | 136 | bb.utils.mkdirhier(tmppath) |
| 122 | 137 | ||
| 138 | """initialize test status file""" | ||
| 139 | test_status = bb.data.getVar('TEST_STATUS', d, 1) | ||
| 140 | if os.path.exists(test_status): | ||
| 141 | os.remove(test_status) | ||
| 142 | os.system("touch %s" % test_status) | ||
| 143 | |||
| 123 | """initialize result file""" | 144 | """initialize result file""" |
| 124 | resultpath = bb.data.getVar('TEST_RESULT', d, 1) | 145 | resultpath = bb.data.getVar('TEST_RESULT', d, 1) |
| 125 | bb.utils.mkdirhier(resultpath) | 146 | bb.utils.mkdirhier(resultpath) |
| @@ -142,9 +163,11 @@ def qemuimagetest_main(d): | |||
| 142 | fulllist = generate_list(testlist) | 163 | fulllist = generate_list(testlist) |
| 143 | 164 | ||
| 144 | """Begin testing""" | 165 | """Begin testing""" |
| 145 | for test in fulllist: | 166 | for index,test in enumerate(fulllist): |
| 146 | (scen, case, fullpath) = test | 167 | (scen, case, fullpath) = test |
| 168 | teststatus(case, "running", index, (len(fulllist) - 1)) | ||
| 147 | runtest(scen, case, fullpath) | 169 | runtest(scen, case, fullpath) |
| 170 | teststatus(case, "finished", index, (len(fulllist) - 1)) | ||
| 148 | 171 | ||
| 149 | """Print Test Result""" | 172 | """Print Test Result""" |
| 150 | ret = 0 | 173 | ret = 0 |
