summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGiampaolo Rodola <g.rodola@gmail.com>2017-05-17 13:54:48 +0200
committerGiampaolo Rodola <g.rodola@gmail.com>2017-05-17 13:54:48 +0200
commit91041c4e1f20b48d5841a2aaacc90a106c4b4f6c (patch)
tree783d625d47b733d09570de9b4a06b8e5f4277a61
parent66e7efe5643e9f0125d9edc52bfa918108570fda (diff)
downloadpsutil-91041c4e1f20b48d5841a2aaacc90a106c4b4f6c.tar.gz
test utils refactoring
-rw-r--r--psutil/tests/__init__.py77
-rwxr-xr-xpsutil/tests/test_unicode.py2
2 files changed, 39 insertions, 40 deletions
diff --git a/psutil/tests/__init__.py b/psutil/tests/__init__.py
index b329d0ff..2f852ef3 100644
--- a/psutil/tests/__init__.py
+++ b/psutil/tests/__init__.py
@@ -359,6 +359,7 @@ def sh(cmd, **kwds):
kwds.setdefault("universal_newlines", True)
kwds.setdefault("creationflags", flags)
p = subprocess.Popen(cmd, **kwds)
+ _subprocesses_started.add(p)
stdout, stderr = p.communicate()
if p.returncode != 0:
raise RuntimeError(stderr)
@@ -452,47 +453,43 @@ def reap_children(recursive=False):
# ===================================================================
-if not POSIX:
- def get_kernel_version():
- return ()
-else:
- def get_kernel_version():
- """Return a tuple such as (2, 6, 36)."""
- s = ""
- uname = os.uname()[2]
- for c in uname:
- if c.isdigit() or c == '.':
- s += c
- else:
- break
- if not s:
- raise ValueError("can't parse %r" % uname)
- minor = 0
- micro = 0
- nums = s.split('.')
- major = int(nums[0])
- if len(nums) >= 2:
- minor = int(nums[1])
- if len(nums) >= 3:
- micro = int(nums[2])
- return (major, minor, micro)
-
-
-if not WINDOWS:
- def get_winver():
- raise NotImplementedError("not a Windows OS")
-else:
- def get_winver():
- wv = sys.getwindowsversion()
- if hasattr(wv, 'service_pack_major'): # python >= 2.7
- sp = wv.service_pack_major or 0
+def get_kernel_version():
+ """Return a tuple such as (2, 6, 36)."""
+ if not POSIX:
+ raise NotImplementedError("not POSIX")
+ s = ""
+ uname = os.uname()[2]
+ for c in uname:
+ if c.isdigit() or c == '.':
+ s += c
else:
- r = re.search(r"\s\d$", wv[4])
- if r:
- sp = int(r.group(0))
- else:
- sp = 0
- return (wv[0], wv[1], sp)
+ break
+ if not s:
+ raise ValueError("can't parse %r" % uname)
+ minor = 0
+ micro = 0
+ nums = s.split('.')
+ major = int(nums[0])
+ if len(nums) >= 2:
+ minor = int(nums[1])
+ if len(nums) >= 3:
+ micro = int(nums[2])
+ return (major, minor, micro)
+
+
+def get_winver():
+ if not WINDOWS:
+ raise NotImplementedError("not WINDOWS")
+ wv = sys.getwindowsversion()
+ if hasattr(wv, 'service_pack_major'): # python >= 2.7
+ sp = wv.service_pack_major or 0
+ else:
+ r = re.search(r"\s\d$", wv[4])
+ if r:
+ sp = int(r.group(0))
+ else:
+ sp = 0
+ return (wv[0], wv[1], sp)
# ===================================================================
diff --git a/psutil/tests/test_unicode.py b/psutil/tests/test_unicode.py
index c59237d5..7c87a3f2 100755
--- a/psutil/tests/test_unicode.py
+++ b/psutil/tests/test_unicode.py
@@ -91,6 +91,8 @@ import psutil.tests
def safe_rmpath(path):
+ # XXX
+ return _safe_rmpath(path)
if APPVEYOR:
# TODO - this is quite random and I'm not sure why it happens,
# nor I can reproduce it locally: