| OLD | NEW |
| 1 #!/usr/bin/env python | 1 #!/usr/bin/env python |
| 2 # | 2 # |
| 3 # $Id: _windows.py 1142 2011-10-05 18:45:49Z g.rodola $ | 3 # $Id: _windows.py 1203 2011-10-24 19:10:36Z g.rodola $ |
| 4 # | 4 # |
| 5 # Copyright (c) 2009, Jay Loden, Giampaolo Rodola'. All rights reserved. | 5 # Copyright (c) 2009, Jay Loden, Giampaolo Rodola'. All rights reserved. |
| 6 # Use of this source code is governed by a BSD-style license that can be | 6 # Use of this source code is governed by a BSD-style license that can be |
| 7 # found in the LICENSE file. | 7 # found in the LICENSE file. |
| 8 | 8 |
| 9 """Windows specific tests. These are implicitly run by test_psutil.py.""" | 9 """Windows specific tests. These are implicitly run by test_psutil.py.""" |
| 10 | 10 |
| 11 import os | 11 import os |
| 12 import unittest | 12 import unittest |
| 13 import platform | 13 import platform |
| 14 import signal | 14 import signal |
| 15 import time | 15 import time |
| 16 import warnings | 16 import warnings |
| 17 import atexit | 17 import atexit |
| 18 import sys | 18 import sys |
| 19 import subprocess |
| 19 | 20 |
| 20 import psutil | 21 import psutil |
| 21 import _psutil_mswindows | 22 import _psutil_mswindows |
| 22 from test_psutil import reap_children, get_test_subprocess, wait_for_pid | 23 from test_psutil import reap_children, get_test_subprocess, wait_for_pid, PY3 |
| 23 try: | 24 try: |
| 24 import wmi | 25 import wmi |
| 25 except ImportError: | 26 except ImportError: |
| 26 err = sys.exc_info()[1] | 27 err = sys.exc_info()[1] |
| 27 atexit.register(warnings.warn, "Couldn't run wmi tests: %s" % str(err), | 28 atexit.register(warnings.warn, "Couldn't run wmi tests: %s" % str(err), |
| 28 RuntimeWarning) | 29 RuntimeWarning) |
| 29 wmi = None | 30 wmi = None |
| 30 | 31 |
| 31 WIN2000 = platform.win32_ver()[0] == '2000' | 32 WIN2000 = platform.win32_ver()[0] == '2000' |
| 32 | 33 |
| (...skipping 30 matching lines...) Expand all Loading... |
| 63 if not platform.uname()[1] in ('vista', 'win-7', 'win7'): | 64 if not platform.uname()[1] in ('vista', 'win-7', 'win7'): |
| 64 raise | 65 raise |
| 65 else: | 66 else: |
| 66 self.assertTrue(rss > 0) | 67 self.assertTrue(rss > 0) |
| 67 if not WIN2000: | 68 if not WIN2000: |
| 68 self.assertEqual(vms, 0) | 69 self.assertEqual(vms, 0) |
| 69 | 70 |
| 70 def test_signal(self): | 71 def test_signal(self): |
| 71 p = psutil.Process(self.pid) | 72 p = psutil.Process(self.pid) |
| 72 self.assertRaises(ValueError, p.send_signal, signal.SIGINT) | 73 self.assertRaises(ValueError, p.send_signal, signal.SIGINT) |
| 74 |
| 75 def test_nic_names(self): |
| 76 p = subprocess.Popen(['ipconfig', '/all'], stdout=subprocess.PIPE) |
| 77 out = p.communicate()[0] |
| 78 if PY3: |
| 79 out = str(out, sys.stdout.encoding) |
| 80 nics = psutil.network_io_counters(pernic=True).keys() |
| 81 for nic in nics: |
| 82 if "pseudo-interface" in nic.replace(' ', '-').lower(): |
| 83 continue |
| 84 if nic not in out: |
| 85 self.fail("%r nic wasn't found in 'ipconfig /all' output" % nic) |
| 73 | 86 |
| 74 if wmi is not None: | 87 if wmi is not None: |
| 75 | 88 |
| 76 # --- Process class tests | 89 # --- Process class tests |
| 77 | 90 |
| 78 def test_process_name(self): | 91 def test_process_name(self): |
| 79 w = wmi.WMI().Win32_Process(ProcessId=self.pid)[0] | 92 w = wmi.WMI().Win32_Process(ProcessId=self.pid)[0] |
| 80 p = psutil.Process(self.pid) | 93 p = psutil.Process(self.pid) |
| 81 self.assertEqual(p.name, w.Caption) | 94 self.assertEqual(p.name, w.Caption) |
| 82 | 95 |
| (...skipping 97 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 180 break | 193 break |
| 181 else: | 194 else: |
| 182 self.fail("can't find partition %r", ps_part) | 195 self.fail("can't find partition %r", ps_part) |
| 183 | 196 |
| 184 | 197 |
| 185 if __name__ == '__main__': | 198 if __name__ == '__main__': |
| 186 test_suite = unittest.TestSuite() | 199 test_suite = unittest.TestSuite() |
| 187 test_suite.addTest(unittest.makeSuite(WindowsSpecificTestCase)) | 200 test_suite.addTest(unittest.makeSuite(WindowsSpecificTestCase)) |
| 188 unittest.TextTestRunner(verbosity=2).run(test_suite) | 201 unittest.TextTestRunner(verbosity=2).run(test_suite) |
| 189 | 202 |
| OLD | NEW |