mirror of https://github.com/python/cpython
Issue #27953: skip failing math and cmath tests for tan on OS X 10.4.
This commit is contained in:
parent
96f774d824
commit
85746542ea
|
@ -4,6 +4,8 @@ import test.test_math as test_math
|
||||||
import unittest
|
import unittest
|
||||||
import cmath, math
|
import cmath, math
|
||||||
from cmath import phase, polar, rect, pi
|
from cmath import phase, polar, rect, pi
|
||||||
|
import platform
|
||||||
|
import sys
|
||||||
import sysconfig
|
import sysconfig
|
||||||
|
|
||||||
INF = float('inf')
|
INF = float('inf')
|
||||||
|
@ -332,6 +334,18 @@ class CMathTests(unittest.TestCase):
|
||||||
|
|
||||||
@requires_IEEE_754
|
@requires_IEEE_754
|
||||||
def test_specific_values(self):
|
def test_specific_values(self):
|
||||||
|
# Some tests need to be skipped on ancient OS X versions.
|
||||||
|
# See issue #27953.
|
||||||
|
SKIP_ON_TIGER = {'tan0064'}
|
||||||
|
|
||||||
|
osx_version = None
|
||||||
|
if sys.platform == 'darwin':
|
||||||
|
version_txt = platform.mac_ver()[0]
|
||||||
|
try:
|
||||||
|
osx_version = tuple(map(int, version_txt.split('.')))
|
||||||
|
except ValueError:
|
||||||
|
pass
|
||||||
|
|
||||||
def rect_complex(z):
|
def rect_complex(z):
|
||||||
"""Wrapped version of rect that accepts a complex number instead of
|
"""Wrapped version of rect that accepts a complex number instead of
|
||||||
two float arguments."""
|
two float arguments."""
|
||||||
|
@ -345,6 +359,12 @@ class CMathTests(unittest.TestCase):
|
||||||
for id, fn, ar, ai, er, ei, flags in parse_testfile(test_file):
|
for id, fn, ar, ai, er, ei, flags in parse_testfile(test_file):
|
||||||
arg = complex(ar, ai)
|
arg = complex(ar, ai)
|
||||||
expected = complex(er, ei)
|
expected = complex(er, ei)
|
||||||
|
|
||||||
|
# Skip certain tests on OS X 10.4.
|
||||||
|
if osx_version is not None and osx_version < (10, 5):
|
||||||
|
if id in SKIP_ON_TIGER:
|
||||||
|
continue
|
||||||
|
|
||||||
if fn == 'rect':
|
if fn == 'rect':
|
||||||
function = rect_complex
|
function = rect_complex
|
||||||
elif fn == 'polar':
|
elif fn == 'polar':
|
||||||
|
|
|
@ -6,8 +6,9 @@ from test import support
|
||||||
import unittest
|
import unittest
|
||||||
import math
|
import math
|
||||||
import os
|
import os
|
||||||
import sys
|
import platform
|
||||||
import struct
|
import struct
|
||||||
|
import sys
|
||||||
import sysconfig
|
import sysconfig
|
||||||
|
|
||||||
eps = 1E-05
|
eps = 1E-05
|
||||||
|
@ -1150,6 +1151,18 @@ class MathTests(unittest.TestCase):
|
||||||
|
|
||||||
@requires_IEEE_754
|
@requires_IEEE_754
|
||||||
def test_testfile(self):
|
def test_testfile(self):
|
||||||
|
# Some tests need to be skipped on ancient OS X versions.
|
||||||
|
# See issue #27953.
|
||||||
|
SKIP_ON_TIGER = {'tan0064'}
|
||||||
|
|
||||||
|
osx_version = None
|
||||||
|
if sys.platform == 'darwin':
|
||||||
|
version_txt = platform.mac_ver()[0]
|
||||||
|
try:
|
||||||
|
osx_version = tuple(map(int, version_txt.split('.')))
|
||||||
|
except ValueError:
|
||||||
|
pass
|
||||||
|
|
||||||
fail_fmt = "{}: {}({!r}): {}"
|
fail_fmt = "{}: {}({!r}): {}"
|
||||||
|
|
||||||
failures = []
|
failures = []
|
||||||
|
@ -1160,6 +1173,10 @@ class MathTests(unittest.TestCase):
|
||||||
if fn in ['rect', 'polar']:
|
if fn in ['rect', 'polar']:
|
||||||
# no real versions of rect, polar
|
# no real versions of rect, polar
|
||||||
continue
|
continue
|
||||||
|
# Skip certain tests on OS X 10.4.
|
||||||
|
if osx_version is not None and osx_version < (10, 5):
|
||||||
|
if id in SKIP_ON_TIGER:
|
||||||
|
continue
|
||||||
|
|
||||||
func = getattr(math, fn)
|
func = getattr(math, fn)
|
||||||
|
|
||||||
|
|
|
@ -135,6 +135,9 @@ Library
|
||||||
Tests
|
Tests
|
||||||
-----
|
-----
|
||||||
|
|
||||||
|
- Issue #27953: Skip math and cmath tests that fail on OS X 10.4 due to a
|
||||||
|
poor libm implementation of tan.
|
||||||
|
|
||||||
- Issue #26040: Improve test_math and test_cmath coverage and rigour. Patch by
|
- Issue #26040: Improve test_math and test_cmath coverage and rigour. Patch by
|
||||||
Jeff Allen.
|
Jeff Allen.
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue