mirror of https://github.com/python/cpython
Fix test_sysconfig when prefix != exec-prefix (#9100).
Reported by Zsolt Cserna.
This commit is contained in:
parent
5fb16cd1d2
commit
1a1a8a0e31
|
@ -1,9 +1,5 @@
|
||||||
"""Tests for 'site'.
|
"""Tests for sysconfig."""
|
||||||
|
|
||||||
Tests assume the initial paths in sys.path once the interpreter has begun
|
|
||||||
executing have not been removed.
|
|
||||||
|
|
||||||
"""
|
|
||||||
import unittest
|
import unittest
|
||||||
import sys
|
import sys
|
||||||
import os
|
import os
|
||||||
|
@ -259,8 +255,15 @@ class TestSysConfig(unittest.TestCase):
|
||||||
# is similar to the global posix_prefix one
|
# is similar to the global posix_prefix one
|
||||||
base = get_config_var('base')
|
base = get_config_var('base')
|
||||||
user = get_config_var('userbase')
|
user = get_config_var('userbase')
|
||||||
|
# the global scheme mirrors the distinction between prefix and
|
||||||
|
# exec-prefix but not the user scheme, so we have to adapt the paths
|
||||||
|
# before comparing (issue #9100)
|
||||||
|
adapt = sys.prefix != sys.exec_prefix
|
||||||
for name in ('stdlib', 'platstdlib', 'purelib', 'platlib'):
|
for name in ('stdlib', 'platstdlib', 'purelib', 'platlib'):
|
||||||
global_path = get_path(name, 'posix_prefix')
|
global_path = get_path(name, 'posix_prefix')
|
||||||
|
if adapt:
|
||||||
|
global_path = global_path.replace(sys.exec_prefix, sys.prefix)
|
||||||
|
base = base.replace(sys.exec_prefix, sys.prefix)
|
||||||
user_path = get_path(name, 'posix_user')
|
user_path = get_path(name, 'posix_user')
|
||||||
self.assertEqual(user_path, global_path.replace(base, user, 1))
|
self.assertEqual(user_path, global_path.replace(base, user, 1))
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue