Kaydet (Commit) 28df8de6 authored tarafından Éric Araujo's avatar Éric Araujo

Make regrtest look at internal dicts in sysconfig.

This reveals problems in the packaging test suite, which I’ll look
into after the regrtest checks are made more usable (see #12314).
üst 505f0ebf
......@@ -965,7 +965,9 @@ class saved_test_environment:
'warnings.filters', 'asyncore.socket_map',
'logging._handlers', 'logging._handlerList', 'sys.gettrace',
'sys.warnoptions', 'threading._dangling',
'multiprocessing.process._dangling')
'multiprocessing.process._dangling',
'sysconfig._CONFIG_VARS', 'sysconfig._SCHEMES',
)
def get_sys_argv(self):
return id(sys.argv), sys.argv, sys.argv[:]
......@@ -1083,6 +1085,27 @@ class saved_test_environment:
multiprocessing.process._dangling.clear()
multiprocessing.process._dangling.update(saved)
def get_sysconfig__CONFIG_VARS(self):
# make sure the dict is initialized
sysconfig.get_config_var('prefix')
return (id(sysconfig._CONFIG_VARS), sysconfig._CONFIG_VARS,
dict(sysconfig._CONFIG_VARS))
def restore_sysconfig__CONFIG_VARS(self, saved):
sysconfig._CONFIG_VARS = saved[1]
sysconfig._CONFIG_VARS.clear()
sysconfig._CONFIG_VARS.update(saved[2])
def get_sysconfig__SCHEMES(self):
# it's mildly evil to look at the internal attribute, but it's easier
# than copying a RawConfigParser object
return (id(sysconfig._SCHEMES), sysconfig._SCHEMES._sections,
sysconfig._SCHEMES._sections.copy())
def restore_sysconfig__SCHEMES(self, saved):
sysconfig._SCHEMES._sections = saved[1]
sysconfig._SCHEMES._sections.clear()
sysconfig._SCHEMES._sections.update(saved[2])
def resource_info(self):
for name in self.resources:
method_suffix = name.replace('.', '_')
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment