Issue #10881: Fix test_site failures with OS X framework builds.
This commit is contained in:
parent
adb87e2677
commit
2c8bf04308
|
@ -312,7 +312,7 @@ def getsitepackages():
|
|||
# locations.
|
||||
from sysconfig import get_config_var
|
||||
framework = get_config_var("PYTHONFRAMEWORK")
|
||||
if framework and "/%s.framework/"%(framework,) in prefix:
|
||||
if framework:
|
||||
sitepackages.append(
|
||||
os.path.join("/Library", framework,
|
||||
sys.version[:3], "site-packages"))
|
||||
|
|
|
@ -176,8 +176,9 @@ def _getuserbase():
|
|||
if sys.platform == "darwin":
|
||||
framework = get_config_var("PYTHONFRAMEWORK")
|
||||
if framework:
|
||||
return joinuser("~", "Library", framework, "%d.%d"%(
|
||||
sys.version_info[:2]))
|
||||
return env_base if env_base else \
|
||||
joinuser("~", "Library", framework, "%d.%d"
|
||||
% (sys.version_info[:2]))
|
||||
|
||||
return env_base if env_base else joinuser("~", ".local")
|
||||
|
||||
|
|
|
@ -228,7 +228,19 @@ class HelperFunctionsTests(unittest.TestCase):
|
|||
self.assertEqual(len(dirs), 1)
|
||||
wanted = os.path.join('xoxo', 'Lib', 'site-packages')
|
||||
self.assertEqual(dirs[0], wanted)
|
||||
elif (sys.platform == "darwin" and
|
||||
sysconfig.get_config_var("PYTHONFRAMEWORK")):
|
||||
# OS X framework builds
|
||||
site.PREFIXES = ['Python.framework']
|
||||
dirs = site.getsitepackages()
|
||||
self.assertEqual(len(dirs), 3)
|
||||
wanted = os.path.join('/Library',
|
||||
sysconfig.get_config_var("PYTHONFRAMEWORK"),
|
||||
sys.version[:3],
|
||||
'site-packages')
|
||||
self.assertEqual(dirs[2], wanted)
|
||||
elif os.sep == '/':
|
||||
# OS X non-framwework builds, Linux, FreeBSD, etc
|
||||
self.assertEqual(len(dirs), 2)
|
||||
wanted = os.path.join('xoxo', 'lib', 'python' + sys.version[:3],
|
||||
'site-packages')
|
||||
|
@ -236,24 +248,12 @@ class HelperFunctionsTests(unittest.TestCase):
|
|||
wanted = os.path.join('xoxo', 'lib', 'site-python')
|
||||
self.assertEqual(dirs[1], wanted)
|
||||
else:
|
||||
# other platforms
|
||||
self.assertEqual(len(dirs), 2)
|
||||
self.assertEqual(dirs[0], 'xoxo')
|
||||
wanted = os.path.join('xoxo', 'lib', 'site-packages')
|
||||
self.assertEqual(dirs[1], wanted)
|
||||
|
||||
# let's try the specific Apple location
|
||||
if (sys.platform == "darwin" and
|
||||
sysconfig.get_config_var("PYTHONFRAMEWORK")):
|
||||
site.PREFIXES = ['Python.framework']
|
||||
dirs = site.getsitepackages()
|
||||
self.assertEqual(len(dirs), 4)
|
||||
wanted = os.path.join('~', 'Library', 'Python',
|
||||
sys.version[:3], 'site-packages')
|
||||
self.assertEqual(dirs[2], os.path.expanduser(wanted))
|
||||
wanted = os.path.join('/Library', 'Python', sys.version[:3],
|
||||
'site-packages')
|
||||
self.assertEqual(dirs[3], wanted)
|
||||
|
||||
class PthFile(object):
|
||||
"""Helper class for handling testing of .pth files"""
|
||||
|
||||
|
|
Loading…
Reference in New Issue