[elbe-devel] [PATCH 03/10] tests test_pylint: switch from command_out() to testspecific system()
Torben Hohn
torben.hohn at linutronix.de
Thu Apr 1 13:15:25 CEST 2021
Use the test specific system() implementation that stores
the command output in the Exception thrown.
Rewrite the skip code, to handle Exceptions, and the
case where no Expception is thrown, when an Exception
is expected.
The test should fail, if its expected to fail, but doesn't.
If the test passes, we want to remove it from the ignore list.
Signed-off-by: Torben Hohn <torben.hohn at linutronix.de>
---
elbepack/tests/test_pylint.py | 16 ++++++++++------
1 file changed, 10 insertions(+), 6 deletions(-)
diff --git a/elbepack/tests/test_pylint.py b/elbepack/tests/test_pylint.py
index 660070304..8ef40f22f 100644
--- a/elbepack/tests/test_pylint.py
+++ b/elbepack/tests/test_pylint.py
@@ -5,7 +5,7 @@
import os
-from elbepack.commands.test import ElbeTestCase
+from elbepack.commands.test import ElbeTestCase, system, ElbeTestException
from elbepack.shellhelper import command_out, system_out
from elbepack.directories import pack_dir, elbe_exe, elbe_dir
@@ -56,10 +56,14 @@ class TestPylint(ElbeTestCase):
def test_lint(self):
- ret, out = command_out("pylint3 %s %s" % (' '.join(self.pylint_opts), self.param))
-
- if ret:
+ try:
+ system("pylint3 %s %s" % (' '.join(self.pylint_opts), self.param))
+ except ElbeTestException as e:
if self.param in TestPylint.failure_set:
- self.skipTest("Pylint test for %s is expected to fail\n%s" % (self.param, out))
+ self.skipTest("Pylint test for %s is expected to fail" % (self.param))
+ self.stdout = e.out
else:
- self.fail(msg=out)
+ raise
+ else:
+ if self.param in TestPylint.failure_set:
+ raise Exception(f"Pylint test for {self.param} is expected to fail, but did not !")
--
2.20.1
More information about the elbe-devel
mailing list