Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(90)

Unified Diff: third_party/psutil/test/_posix.py

Issue 8919026: Remove psutil from tree, install via install-build-deps.sh (Closed) Base URL: http://git.chromium.org/chromium/src.git@master
Patch Set: Sort package list. Created 9 years ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « third_party/psutil/test/_osx.py ('k') | third_party/psutil/test/_windows.py » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: third_party/psutil/test/_posix.py
diff --git a/third_party/psutil/test/_posix.py b/third_party/psutil/test/_posix.py
deleted file mode 100644
index ad0db64a003f8d621f0043f845257744f50e588f..0000000000000000000000000000000000000000
--- a/third_party/psutil/test/_posix.py
+++ /dev/null
@@ -1,148 +0,0 @@
-#!/usr/bin/env python
-#
-# $Id: _posix.py 1142 2011-10-05 18:45:49Z g.rodola $
-#
-# Copyright (c) 2009, Jay Loden, Giampaolo Rodola'. All rights reserved.
-# Use of this source code is governed by a BSD-style license that can be
-# found in the LICENSE file.
-
-"""POSIX specific tests. These are implicitly run by test_psutil.py."""
-
-import unittest
-import subprocess
-import time
-import sys
-import os
-
-import psutil
-
-from test_psutil import (get_test_subprocess, reap_children, PYTHON, LINUX, OSX,
- ignore_access_denied, sh)
-
-
-def ps(cmd):
- """Expects a ps command with a -o argument and parse the result
- returning only the value of interest.
- """
- if not LINUX:
- cmd = cmd.replace(" --no-headers ", " ")
- p = subprocess.Popen(cmd, shell=1, stdout=subprocess.PIPE)
- output = p.communicate()[0].strip()
- if sys.version_info >= (3,):
- output = str(output, sys.stdout.encoding)
- if not LINUX:
- output = output.split('\n')[1]
- try:
- return int(output)
- except ValueError:
- return output
-
-
-class PosixSpecificTestCase(unittest.TestCase):
- """Compare psutil results against 'ps' command line utility."""
-
- # for ps -o arguments see: http://unixhelp.ed.ac.uk/CGI/man-cgi?ps
-
- def setUp(self):
- self.pid = get_test_subprocess([PYTHON, "-E", "-O"]).pid
-
- def tearDown(self):
- reap_children()
-
- def test_process_parent_pid(self):
- ppid_ps = ps("ps --no-headers -o ppid -p %s" %self.pid)
- ppid_psutil = psutil.Process(self.pid).ppid
- self.assertEqual(ppid_ps, ppid_psutil)
-
- def test_process_uid(self):
- uid_ps = ps("ps --no-headers -o uid -p %s" %self.pid)
- uid_psutil = psutil.Process(self.pid).uids.real
- self.assertEqual(uid_ps, uid_psutil)
-
- def test_process_gid(self):
- gid_ps = ps("ps --no-headers -o rgid -p %s" %self.pid)
- gid_psutil = psutil.Process(self.pid).gids.real
- self.assertEqual(gid_ps, gid_psutil)
-
- def test_process_username(self):
- username_ps = ps("ps --no-headers -o user -p %s" %self.pid)
- username_psutil = psutil.Process(self.pid).username
- self.assertEqual(username_ps, username_psutil)
-
- @ignore_access_denied
- def test_process_rss_memory(self):
- # give python interpreter some time to properly initialize
- # so that the results are the same
- time.sleep(0.1)
- rss_ps = ps("ps --no-headers -o rss -p %s" %self.pid)
- rss_psutil = psutil.Process(self.pid).get_memory_info()[0] / 1024
- self.assertEqual(rss_ps, rss_psutil)
-
- @ignore_access_denied
- def test_process_vsz_memory(self):
- # give python interpreter some time to properly initialize
- # so that the results are the same
- time.sleep(0.1)
- vsz_ps = ps("ps --no-headers -o vsz -p %s" %self.pid)
- vsz_psutil = psutil.Process(self.pid).get_memory_info()[1] / 1024
- self.assertEqual(vsz_ps, vsz_psutil)
-
- def test_process_name(self):
- # use command + arg since "comm" keyword not supported on all platforms
- name_ps = ps("ps --no-headers -o command -p %s" %self.pid).split(' ')[0]
- # remove path if there is any, from the command
- name_ps = os.path.basename(name_ps).lower()
- name_psutil = psutil.Process(self.pid).name.lower()
- self.assertEqual(name_ps, name_psutil)
-
- def test_process_exe(self):
- ps_pathname = ps("ps --no-headers -o command -p %s" %self.pid).split(' ')[0]
- psutil_pathname = psutil.Process(self.pid).exe
- try:
- self.assertEqual(ps_pathname, psutil_pathname)
- except AssertionError:
- # certain platforms such as BSD are more accurate returning:
- # "/usr/local/bin/python2.7"
- # ...instead of:
- # "/usr/local/bin/python"
- # We do not want to consider this difference in accuracy
- # an error.
- adjusted_ps_pathname = ps_pathname[:len(ps_pathname)]
- self.assertEqual(ps_pathname, adjusted_ps_pathname)
-
- def test_process_cmdline(self):
- ps_cmdline = ps("ps --no-headers -o command -p %s" %self.pid)
- psutil_cmdline = " ".join(psutil.Process(self.pid).cmdline)
- self.assertEqual(ps_cmdline, psutil_cmdline)
-
- def test_get_pids(self):
- # Note: this test might fail if the OS is starting/killing
- # other processes in the meantime
- p = get_test_subprocess(["ps", "ax", "-o", "pid"], stdout=subprocess.PIPE)
- output = p.communicate()[0].strip()
- if sys.version_info >= (3,):
- output = str(output, sys.stdout.encoding)
- output = output.replace('PID', '')
- p.wait()
- pids_ps = []
- for pid in output.split('\n'):
- if pid:
- pids_ps.append(int(pid.strip()))
- # remove ps subprocess pid which is supposed to be dead in meantime
- pids_ps.remove(p.pid)
- pids_psutil = psutil.get_pid_list()
- pids_ps.sort()
- pids_psutil.sort()
-
- if pids_ps != pids_psutil:
- difference = [x for x in pids_psutil if x not in pids_ps] + \
- [x for x in pids_ps if x not in pids_psutil]
- self.fail("difference: " + str(difference))
-
-
-if __name__ == '__main__':
- test_suite = unittest.TestSuite()
- test_suite.addTest(unittest.makeSuite(PosixSpecificTestCase))
- unittest.TextTestRunner(verbosity=2).run(test_suite)
-
-
« no previous file with comments | « third_party/psutil/test/_osx.py ('k') | third_party/psutil/test/_windows.py » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698