summaryrefslogtreecommitdiff
path: root/Lib/test/test_os.py
diff options
context:
space:
mode:
authorVictor Stinner <victor.stinner@gmail.com>2017-11-02 07:28:27 -0700
committerGitHub <noreply@github.com>2017-11-02 07:28:27 -0700
commitc29b585fd4b5a91d17fc5dd41d86edff28a30da3 (patch)
treeaadcf238ccc1867d7adefc079081781424e3e62c /Lib/test/test_os.py
parente314853d57450b2b9523157eebd405289a795a0e (diff)
downloadcpython-git-c29b585fd4b5a91d17fc5dd41d86edff28a30da3.tar.gz
bpo-31784: Implement PEP 564: add time.time_ns() (#3989)
Add new time functions: * time.clock_gettime_ns() * time.clock_settime_ns() * time.monotonic_ns() * time.perf_counter_ns() * time.process_time_ns() * time.time_ns() Add new _PyTime functions: * _PyTime_FromTimespec() * _PyTime_FromNanosecondsObject() * _PyTime_FromTimeval() Other changes: * Add also os.times() tests to test_os. * pytime_fromtimeval() and pytime_fromtimeval() now return _PyTime_MAX or _PyTime_MIN on overflow, rather than undefined behaviour * _PyTime_FromNanoseconds() parameter type changes from long long to _PyTime_t
Diffstat (limited to 'Lib/test/test_os.py')
-rw-r--r--Lib/test/test_os.py17
1 files changed, 17 insertions, 0 deletions
diff --git a/Lib/test/test_os.py b/Lib/test/test_os.py
index eb73af51ac..4d57bfbf9a 100644
--- a/Lib/test/test_os.py
+++ b/Lib/test/test_os.py
@@ -3549,6 +3549,23 @@ class TestPEP519(unittest.TestCase):
self.assertRaises(ZeroDivisionError, self.fspath,
_PathLike(ZeroDivisionError()))
+
+class TimesTests(unittest.TestCase):
+ def test_times(self):
+ times = os.times()
+ self.assertIsInstance(times, os.times_result)
+
+ for field in ('user', 'system', 'children_user', 'children_system',
+ 'elapsed'):
+ value = getattr(times, field)
+ self.assertIsInstance(value, float)
+
+ if os.name == 'nt':
+ self.assertEqual(times.children_user, 0)
+ self.assertEqual(times.children_system, 0)
+ self.assertEqual(times.elapsed, 0)
+
+
# Only test if the C version is provided, otherwise TestPEP519 already tested
# the pure Python implementation.
if hasattr(os, "_fspath"):