| Index: third_party/psutil/test/_linux.py
|
| diff --git a/third_party/psutil/test/_linux.py b/third_party/psutil/test/_linux.py
|
| index 187c058a4843735a7567002e886b8ebf38738f0f..a20d8dc227b4a8e62eff3d4239748964fb2ae76e 100644
|
| --- a/third_party/psutil/test/_linux.py
|
| +++ b/third_party/psutil/test/_linux.py
|
| @@ -1,12 +1,18 @@
|
| #!/usr/bin/env python
|
| #
|
| -# $Id: _linux.py 707 2010-10-19 18:16:08Z g.rodola $
|
| +# $Id: _linux.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.
|
| +
|
| +"""Linux specific tests. These are implicitly run by test_psutil.py."""
|
|
|
| import unittest
|
| import subprocess
|
| import sys
|
|
|
| +from test_psutil import sh
|
| import psutil
|
|
|
|
|
| @@ -34,12 +40,33 @@ class LinuxSpecificTestCase(unittest.TestCase):
|
| psutil_cmem = psutil.phymem_buffers() / 1024
|
| self.assertEqual(free_cmem, psutil_cmem)
|
|
|
| + def test_disks(self):
|
| + # test psutil.disk_usage() and psutil.disk_partitions()
|
| + # against "df -a"
|
| + def df(path):
|
| + out = sh('df -P -B 1 "%s"' % path).strip()
|
| + lines = out.split('\n')
|
| + lines.pop(0)
|
| + line = lines.pop(0)
|
| + dev, total, used, free = line.split()[:4]
|
| + if dev == 'none':
|
| + dev = ''
|
| + total, used, free = int(total), int(used), int(free)
|
| + return dev, total, used, free
|
| +
|
| + for part in psutil.disk_partitions(all=False):
|
| + usage = psutil.disk_usage(part.mountpoint)
|
| + dev, total, used, free = df(part.mountpoint)
|
| + self.assertEqual(part.device, dev)
|
| + self.assertEqual(usage.total, total)
|
| + # 10 MB tollerance
|
| + if abs(usage.free - free) > 10 * 1024 * 1024:
|
| + self.fail("psutil=%s, df=%s" % usage.free, free)
|
| + if abs(usage.used - used) > 10 * 1024 * 1024:
|
| + self.fail("psutil=%s, df=%s" % usage.used, used)
|
| +
|
|
|
| if __name__ == '__main__':
|
| test_suite = unittest.TestSuite()
|
| test_suite.addTest(unittest.makeSuite(LinuxSpecificTestCase))
|
| unittest.TextTestRunner(verbosity=2).run(test_suite)
|
| -
|
| -
|
| -
|
| -
|
|
|