aboutsummaryrefslogtreecommitdiffstats
path: root/xtesting/core/feature.py
diff options
context:
space:
mode:
authorCédric Ollivier <cedric.ollivier@orange.com>2018-11-28 22:37:17 +0100
committerCédric Ollivier <cedric.ollivier@orange.com>2018-12-01 11:49:26 +0100
commit48a2d7459af637c647707d125d4639255709d252 (patch)
treeffa13b49009d7ba4ffd3af5ae5114132fcfc06f4 /xtesting/core/feature.py
parentb925fd40ee67f516df2ec188e6ef77b1392a176e (diff)
Set shell=True in subprocess.check_call
It allows running multiple shell instructions (see third). Change-Id: I132813c51d42f0fb4bc729d315c468d426f2fb3c Signed-off-by: Cédric Ollivier <cedric.ollivier@orange.com> (cherry picked from commit eae8283aaadeb77884406ded028f2e414659c3b3)
Diffstat (limited to 'xtesting/core/feature.py')
-rw-r--r--xtesting/core/feature.py15
1 files changed, 6 insertions, 9 deletions
diff --git a/xtesting/core/feature.py b/xtesting/core/feature.py
index 86215515..2cb36bd6 100644
--- a/xtesting/core/feature.py
+++ b/xtesting/core/feature.py
@@ -99,17 +99,14 @@ class BashFeature(Feature):
0 if cmd returns 0,
-1 otherwise.
"""
- ret = -1
try:
cmd = kwargs["cmd"]
with open(self.result_file, 'w+') as f_stdout:
- proc = subprocess.Popen(cmd.split(), stdout=f_stdout,
- stderr=subprocess.STDOUT)
- ret = proc.wait()
- self.__logger.info(
- "Test result is stored in '%s'", self.result_file)
- if ret != 0:
- self.__logger.error("Execute command: %s failed", cmd)
+ subprocess.check_call(
+ cmd, shell=True, stdout=f_stdout, stderr=subprocess.STDOUT)
+ return 0
except KeyError:
self.__logger.error("Please give cmd as arg. kwargs: %s", kwargs)
- return ret
+ except subprocess.CalledProcessError:
+ self.__logger.error("Execute command: %s failed", cmd)
+ return -1