Often ptest-runner will have exit code 1 even if it worked, probably because some of the tests failed. Modified the condition to ptest-runner existing and having no output.
Signed-off-by: Lucian Musat <[email protected]> --- meta/lib/oeqa/runtime/_ptest.py | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/meta/lib/oeqa/runtime/_ptest.py b/meta/lib/oeqa/runtime/_ptest.py index 4c58dc1..5f9a141 100644 --- a/meta/lib/oeqa/runtime/_ptest.py +++ b/meta/lib/oeqa/runtime/_ptest.py @@ -99,26 +99,26 @@ class PtestRunnerTest(oeRuntimeTest): return complementary_pkgs.split() def setUp(self): - self.buildhist_dir = oeRuntimeTest.tc.d.getVar("BUILDHISTORY_DIR_IMAGE", True) - self.assertTrue(os.path.exists(self.buildhist_dir)) self.ptest_log = os.path.join(oeRuntimeTest.tc.d.getVar("TEST_LOG_DIR",True), "ptest-%s.log" % oeRuntimeTest.tc.d.getVar('DATETIME', True)) @skipUnlessPassed('test_ssh') def test_ptestrunner(self): self.add_smart_channel() - cond = oeRuntimeTest.hasPackage("ptest-runner") and oeRuntimeTest.hasFeature("ptest") and oeRuntimeTest.hasPackage("-ptest") - if not cond: - self.install_packages(self.install_complementary("*-ptest")) - self.install_packages(['ptest-runner']) + (status, result) = self.target.run('which ptest-runner', 0) + if (status != 0): + self.install_packages(self.install_complementary("*-ptest")) + self.install_packages(['ptest-runner']) + + (status, result) = self.target.run('/usr/bin/ptest-runner > /tmp/ptest.log 2>&1', 0) + self.assertTrue(result == "", msg=str(result)) + self.assertTrue(status != 127, msg="Ptest-runner not found!") - self.target.run('/usr/bin/ptest-runner > /tmp/ptest.log 2>&1', 0) self.target.copy_from('/tmp/ptest.log', self.ptest_log) - shutil.copyfile(self.ptest_log, os.path.join(self.buildhist_dir, "ptest.log")) - result = self.parse_ptest(os.path.join(self.buildhist_dir, "ptest.log")) + result = self.parse_ptest(self.ptest_log) log_results_to_location = "./results" if os.path.exists(log_results_to_location): shutil.rmtree(log_results_to_location) os.makedirs(log_results_to_location) - result.log_as_files(log_results_to_location, test_status = ['fail']) + result.log_as_files(log_results_to_location, test_status = ['pass','fail']) -- 1.9.1 -- _______________________________________________ Openembedded-core mailing list [email protected] http://lists.openembedded.org/mailman/listinfo/openembedded-core
