From 4ca53b38ce75ff012c11b719b4989510ba69014a Mon Sep 17 00:00:00 2001 From: Yeoh Ee Peng Date: Wed, 29 Aug 2018 17:48:21 +0800 Subject: oeqa/runtime/dnf: Make sure test_dnf_install does not skipped During debugging dnf issue, we found that the test_dnf_install PASSED the testing even though the environment does not allow dnf install to run successfully. Further debugging had identified that current test_dnf_install will execute dnf install even when the package to be installed already exist, thus dnf install will just skipped and this test will PASSED even though it was not. To solve this, added additional logic to check if the package to be installed already exist, if yes then remove the package before actually run dnf install. This will make sure dnf install was tested as expected. (From OE-Core rev: 4f662b253f7313c4e02bfafb527cdac076b6309a) (From OE-Core rev: a80498e62898110e2ed6b01cbb9f5dd85995d13b) Signed-off-by: Yeoh Ee Peng Signed-off-by: Richard Purdie Signed-off-by: Armin Kuster Signed-off-by: Richard Purdie --- meta/lib/oeqa/runtime/cases/dnf.py | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) (limited to 'meta/lib') diff --git a/meta/lib/oeqa/runtime/cases/dnf.py b/meta/lib/oeqa/runtime/cases/dnf.py index 7da31cbf88..dd7affca0a 100644 --- a/meta/lib/oeqa/runtime/cases/dnf.py +++ b/meta/lib/oeqa/runtime/cases/dnf.py @@ -67,7 +67,8 @@ class DnfRepoTest(DnfTest): deploy_url = 'http://%s:%s/' %(self.target.server_ip, self.repo_server.port) cmdlinerepoopts = ["--repofrompath=oe-testimage-repo-%s,%s%s" %(arch, deploy_url, arch) for arch in pkgarchs] - self.dnf(" ".join(cmdlinerepoopts) + " --nogpgcheck " + command) + output = self.dnf(" ".join(cmdlinerepoopts) + " --nogpgcheck " + command) + return output @OETestDepends(['dnf.DnfBasicTest.test_dnf_help']) @OETestID(1744) @@ -88,6 +89,9 @@ class DnfRepoTest(DnfTest): @OETestDepends(['dnf.DnfRepoTest.test_dnf_makecache']) @OETestID(1740) def test_dnf_install(self): + output = self.dnf_with_repo('list run-postinsts-dev') + if 'Installed Packages' in output: + self.dnf_with_repo('remove -y run-postinsts-dev') self.dnf_with_repo('install -y run-postinsts-dev') @OETestDepends(['dnf.DnfRepoTest.test_dnf_install']) -- cgit v1.2.3-54-g00ecf