diff options
author | zjh <junhuix.zhang@intel.com> | 2015-07-03 17:32:35 +0800 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2015-07-09 18:00:21 +0100 |
commit | d245899cc98881d2be784f8e7302120765c2bc7f (patch) | |
tree | 5f667496105f238e61e9ec7b6b22c7d77ecd2f46 /meta/classes/testimage.bbclass | |
parent | 129aed8d799b91c7327cebcb241ad3f7a4f7de66 (diff) | |
download | openembedded-core-contrib-d245899cc98881d2be784f8e7302120765c2bc7f.tar.gz |
testimage: Add support for test suites manifest files
Allow the list of TEST_SUITES to be read from a list of manifest files
in the TEST_SUITES_MANIFEST variable.
[YOCTO #7848]
(From OE-Core rev: c270148b3f0e87bbaafbcffbca4ee7b965be6569)
Signed-off-by: zjh <junhuix.zhang@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/classes/testimage.bbclass')
-rw-r--r-- | meta/classes/testimage.bbclass | 26 |
1 files changed, 24 insertions, 2 deletions
diff --git a/meta/classes/testimage.bbclass b/meta/classes/testimage.bbclass index 1e3bb066d4..2b655b49fa 100644 --- a/meta/classes/testimage.bbclass +++ b/meta/classes/testimage.bbclass @@ -72,15 +72,37 @@ do_testsdk[nostamp] = "1" do_testsdk[depends] += "${TESTIMAGEDEPENDS}" do_testsdk[lockfiles] += "${TESTIMAGELOCK}" +# get testcase list from specified file +# if path is a relative path, then relative to build/conf/ +def read_testlist(d, fpath): + if not os.path.isabs(fpath): + builddir = d.getVar("TOPDIR", True) + fpath = os.path.join(builddir, "conf", fpath) + if not os.path.exists(fpath): + bb.fatal("No such manifest file: ", fpath) + tcs = [] + for line in open(fpath).readlines(): + line = line.strip() + if line and not line.startswith("#"): + tcs.append(line) + return " ".join(tcs) + def get_tests_list(d, type="runtime"): - testsuites = d.getVar("TEST_SUITES", True).split() + testsuites = [] + testslist = [] + manifests = d.getVar("TEST_SUITES_MANIFEST", True) + if manifests is not None: + manifests = manifests.split() + for manifest in manifests: + testsuites.extend(read_testlist(d, manifest).split()) + else: + testsuites = d.getVar("TEST_SUITES", True).split() if type == "sdk": testsuites = (d.getVar("TEST_SUITES_SDK", True) or "auto").split() bbpath = d.getVar("BBPATH", True).split(':') # This relies on lib/ under each directory in BBPATH being added to sys.path # (as done by default in base.bbclass) - testslist = [] for testname in testsuites: if testname != "auto": if testname.startswith("oeqa."): |