mirror of
https://github.com/python/cpython.git
synced 2025-08-30 13:38:43 +00:00
bpo-34373: fix test_mktime and test_pthread_getcpuclickid tests on AIX (GH-8726)
* Fix test_mktime on AIX by adding code to get mktime to behave the same way as it does on other *nix systems * Fix test_pthread_getcpuclickid in AIX by adjusting the test case expectations when running on AIX in 32-bit mode Patch by Michael Felt.
This commit is contained in:
parent
c465682718
commit
e2926b7248
4 changed files with 57 additions and 20 deletions
|
@ -119,7 +119,13 @@ class TimeTestCase(unittest.TestCase):
|
|||
def test_pthread_getcpuclockid(self):
|
||||
clk_id = time.pthread_getcpuclockid(threading.get_ident())
|
||||
self.assertTrue(type(clk_id) is int)
|
||||
self.assertNotEqual(clk_id, time.CLOCK_THREAD_CPUTIME_ID)
|
||||
# when in 32-bit mode AIX only returns the predefined constant
|
||||
if not platform.system() == "AIX":
|
||||
self.assertNotEqual(clk_id, time.CLOCK_THREAD_CPUTIME_ID)
|
||||
elif (sys.maxsize.bit_length() > 32):
|
||||
self.assertNotEqual(clk_id, time.CLOCK_THREAD_CPUTIME_ID)
|
||||
else:
|
||||
self.assertEqual(clk_id, time.CLOCK_THREAD_CPUTIME_ID)
|
||||
t1 = time.clock_gettime(clk_id)
|
||||
t2 = time.clock_gettime(clk_id)
|
||||
self.assertLessEqual(t1, t2)
|
||||
|
@ -424,13 +430,6 @@ class TimeTestCase(unittest.TestCase):
|
|||
def test_mktime(self):
|
||||
# Issue #1726687
|
||||
for t in (-2, -1, 0, 1):
|
||||
if sys.platform.startswith('aix') and t == -1:
|
||||
# Issue #11188, #19748: mktime() returns -1 on error. On Linux,
|
||||
# the tm_wday field is used as a sentinel () to detect if -1 is
|
||||
# really an error or a valid timestamp. On AIX, tm_wday is
|
||||
# unchanged even on success and so cannot be used as a
|
||||
# sentinel.
|
||||
continue
|
||||
try:
|
||||
tt = time.localtime(t)
|
||||
except (OverflowError, OSError):
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue