[Python-checkins] cpython (3.2): Fix test_sysconfig when prefix != exec-prefix (#9100).
eric.araujo
python-checkins at python.org
Sun Oct 9 08:59:48 CEST 2011
http://hg.python.org/cpython/rev/1f8aef75558c
changeset: 72819:1f8aef75558c
branch: 3.2
user: Éric Araujo <merwok at netwok.org>
date: Sat Oct 08 01:55:07 2011 +0200
summary:
Fix test_sysconfig when prefix != exec-prefix (#9100).
I tested this manually; it would be great to have buildbots using
installed Pythons, including Pythons configured with different prefix
and exec-prefix.
Reported by Zsolt Cserna.
files:
Lib/test/test_sysconfig.py | 15 +++++++++------
1 files changed, 9 insertions(+), 6 deletions(-)
diff --git a/Lib/test/test_sysconfig.py b/Lib/test/test_sysconfig.py
--- a/Lib/test/test_sysconfig.py
+++ b/Lib/test/test_sysconfig.py
@@ -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 sys
import os
@@ -11,7 +7,7 @@
import shutil
from copy import copy, deepcopy
-from test.support import (run_unittest, TESTFN, unlink, get_attribute,
+from test.support import (run_unittest, TESTFN, unlink,
captured_stdout, skip_unless_symlink)
import sysconfig
@@ -265,8 +261,15 @@
# is similar to the global posix_prefix one
base = get_config_var('base')
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'):
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')
self.assertEqual(user_path, global_path.replace(base, user, 1))
--
Repository URL: http://hg.python.org/cpython
More information about the Python-checkins
mailing list