diff options
Diffstat (limited to 'src/software/test/common.py')
-rw-r--r-- | src/software/test/common.py | 29 |
1 files changed, 10 insertions, 19 deletions
diff --git a/src/software/test/common.py b/src/software/test/common.py index 0d199b2..ef3d157 100644 --- a/src/software/test/common.py +++ b/src/software/test/common.py @@ -24,10 +24,9 @@ Common utilities and base class for all software tests. import os import pywbem import re -import subprocess import tempfile import unittest -from subprocess import check_output +from subprocess import call, check_output import rpmcache @@ -42,7 +41,7 @@ def remove_pkg(pkg, *args): """ if isinstance(pkg, rpmcache.Package): pkg = pkg.name - subprocess.call(["rpm", "--quiet"] + list(args) + ["-e", pkg]) + call(["rpm", "--quiet"] + list(args) + ["-e", pkg]) def install_pkg(pkg, newer=True): """ @@ -53,12 +52,12 @@ def install_pkg(pkg, newer=True): if isinstance(pkg, rpmcache.Package): try: rpm_name = rpmcache.get_rpm_name(pkg, newer=newer) - subprocess.call(["rpm", "--quiet", "-i", rpm_name]) + call(["rpm", "--quiet", "-i", rpm_name]) return except rpmcache.MissingRPM: pass pkg = pkg.name - subprocess.call(["yum", "-q", "-y", "install", pkg]) + call(["yum", "-q", "-y", "install", pkg]) def is_installed(pkg, newer=True): """ @@ -66,25 +65,13 @@ def is_installed(pkg, newer=True): Accepts the same parameters as install_pkg. @see install_pkg """ - if not isinstance(pkg, rpmcache.Package): - return subprocess.call(["rpm", "--quiet", "-q", pkg]) == 0 - else: - try: - cmd = [ "rpm", "-q", "--qf", "%{EPOCH}:%{NVRA}", pkg.name ] - out = subprocess.check_output(cmd) - epoch, nvra = out.split(':') #pylint: disable=E1103 - if not epoch or epoch == "(none)": - epoch = "0" - return ( epoch == pkg.epoch - and nvra == pkg.get_nevra(newer=newer, with_epoch="NEVER")) - except subprocess.CalledProcessError: - return False + return rpmcache.is_installed(pkg, newer) def verify_pkg(name): """ @return output of command rpm, with verification output for package """ - return subprocess.call(["rpm", "--quiet", "-Va", name]) == 0 + return call(["rpm", "--quiet", "-Va", name]) == 0 def mark_dangerous(method): """ @@ -152,6 +139,10 @@ class SoftwareBaseTestCase(unittest.TestCase): #pylint: disable=R0904 CLASS_NAME = "Define in subclass" + def __init__(self, *args, **kwargs): + unittest.TestCase.__init__(self, *args, **kwargs) + self.longMessage = True + def setUp(self): unittest.TestCase.setUp(self) self.objpath = pywbem.CIMInstanceName( |