diff options
author | Ross Burton <ross.burton@intel.com> | 2016-06-15 12:01:23 +0100 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2016-06-23 14:26:14 +0100 |
commit | 675843d540f30058269789b2c6808a206ab04a04 (patch) | |
tree | 85383a91e26ddebb9dc3bcd8b4c63d47dc3bf5c5 /meta/lib/oeqa/runtime | |
parent | c65cf8ede2116ef1fa3ddeb617e7c39caacff941 (diff) | |
download | poky-675843d540f30058269789b2c6808a206ab04a04.tar.gz |
oeqa: fix hasPackage, add hasPackageMatch
hasPackage() was looking for the string provided as an RE substring in the
manifest, which resulted in a large number of false positives (i.e. libgtkfoo
would match "gtk+").
Rewrite the manifest loader to parse the files into a proper data structure,
change hasPackage to do full string matches, and add hasPackageMatch which does
RE substring matches.
(From OE-Core rev: b9409863af71899e02275439949e3f4cdfaf2d0f)
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/lib/oeqa/runtime')
-rw-r--r-- | meta/lib/oeqa/runtime/_ptest.py | 4 | ||||
-rw-r--r-- | meta/lib/oeqa/runtime/python.py | 2 | ||||
-rw-r--r-- | meta/lib/oeqa/runtime/smart.py | 2 |
3 files changed, 4 insertions, 4 deletions
diff --git a/meta/lib/oeqa/runtime/_ptest.py b/meta/lib/oeqa/runtime/_ptest.py index 0621028b86..71324d3da2 100644 --- a/meta/lib/oeqa/runtime/_ptest.py +++ b/meta/lib/oeqa/runtime/_ptest.py | |||
@@ -11,7 +11,7 @@ import subprocess | |||
11 | def setUpModule(): | 11 | def setUpModule(): |
12 | if not oeRuntimeTest.hasFeature("package-management"): | 12 | if not oeRuntimeTest.hasFeature("package-management"): |
13 | skipModule("Image doesn't have package management feature") | 13 | skipModule("Image doesn't have package management feature") |
14 | if not oeRuntimeTest.hasPackage("smart"): | 14 | if not oeRuntimeTest.hasPackage("smartpm"): |
15 | skipModule("Image doesn't have smart installed") | 15 | skipModule("Image doesn't have smart installed") |
16 | if "package_rpm" != oeRuntimeTest.tc.d.getVar("PACKAGE_CLASSES", True).split()[0]: | 16 | if "package_rpm" != oeRuntimeTest.tc.d.getVar("PACKAGE_CLASSES", True).split()[0]: |
17 | skipModule("Rpm is not the primary package manager") | 17 | skipModule("Rpm is not the primary package manager") |
@@ -105,7 +105,7 @@ class PtestRunnerTest(oeRuntimeTest): | |||
105 | def test_ptestrunner(self): | 105 | def test_ptestrunner(self): |
106 | self.add_smart_channel() | 106 | self.add_smart_channel() |
107 | (runnerstatus, result) = self.target.run('which ptest-runner', 0) | 107 | (runnerstatus, result) = self.target.run('which ptest-runner', 0) |
108 | cond = oeRuntimeTest.hasPackage("ptest-runner") and oeRuntimeTest.hasFeature("ptest") and oeRuntimeTest.hasPackage("-ptest") and (runnerstatus != 0) | 108 | cond = oeRuntimeTest.hasPackage("ptest-runner") and oeRuntimeTest.hasFeature("ptest") and oeRuntimeTest.hasPackageMatch("-ptest") and (runnerstatus != 0) |
109 | if cond: | 109 | if cond: |
110 | self.install_packages(self.install_complementary("*-ptest")) | 110 | self.install_packages(self.install_complementary("*-ptest")) |
111 | self.install_packages(['ptest-runner']) | 111 | self.install_packages(['ptest-runner']) |
diff --git a/meta/lib/oeqa/runtime/python.py b/meta/lib/oeqa/runtime/python.py index 26edb7a9b8..29a231c7c3 100644 --- a/meta/lib/oeqa/runtime/python.py +++ b/meta/lib/oeqa/runtime/python.py | |||
@@ -4,7 +4,7 @@ from oeqa.oetest import oeRuntimeTest, skipModule | |||
4 | from oeqa.utils.decorators import * | 4 | from oeqa.utils.decorators import * |
5 | 5 | ||
6 | def setUpModule(): | 6 | def setUpModule(): |
7 | if not oeRuntimeTest.hasPackage("python"): | 7 | if not oeRuntimeTest.hasPackage("python-core"): |
8 | skipModule("No python package in the image") | 8 | skipModule("No python package in the image") |
9 | 9 | ||
10 | 10 | ||
diff --git a/meta/lib/oeqa/runtime/smart.py b/meta/lib/oeqa/runtime/smart.py index 126d614638..c7a5753991 100644 --- a/meta/lib/oeqa/runtime/smart.py +++ b/meta/lib/oeqa/runtime/smart.py | |||
@@ -7,7 +7,7 @@ from oeqa.utils.httpserver import HTTPService | |||
7 | def setUpModule(): | 7 | def setUpModule(): |
8 | if not oeRuntimeTest.hasFeature("package-management"): | 8 | if not oeRuntimeTest.hasFeature("package-management"): |
9 | skipModule("Image doesn't have package management feature") | 9 | skipModule("Image doesn't have package management feature") |
10 | if not oeRuntimeTest.hasPackage("smart"): | 10 | if not oeRuntimeTest.hasPackage("smartpm"): |
11 | skipModule("Image doesn't have smart installed") | 11 | skipModule("Image doesn't have smart installed") |
12 | if "package_rpm" != oeRuntimeTest.tc.d.getVar("PACKAGE_CLASSES", True).split()[0]: | 12 | if "package_rpm" != oeRuntimeTest.tc.d.getVar("PACKAGE_CLASSES", True).split()[0]: |
13 | skipModule("Rpm is not the primary package manager") | 13 | skipModule("Rpm is not the primary package manager") |