summaryrefslogtreecommitdiffstats
path: root/Lib/test/pythoninfo.py
diff options
context:
space:
mode:
authorVictor Stinner <vstinner@redhat.com>2018-11-13 23:24:28 (GMT)
committerGitHub <noreply@github.com>2018-11-13 23:24:28 (GMT)
commit7ddd56f4d835c6107b20a0b4233185bb59270142 (patch)
treefaffdfb7ca138f1b40c608b3b2727cfe34f1f5f3 /Lib/test/pythoninfo.py
parent746b2d35ea47005054ed774fecaed64fab803d7d (diff)
downloadcpython-7ddd56f4d835c6107b20a0b4233185bb59270142.zip
cpython-7ddd56f4d835c6107b20a0b4233185bb59270142.tar.gz
cpython-7ddd56f4d835c6107b20a0b4233185bb59270142.tar.bz2
bpo-35233: Rewrite test_embed.InitConfigTests (GH-10524)
* Fix _PyCoreConfig_SetGlobalConfig(): set also Py_FrozenFlag * Fix _PyCoreConfig_AsDict(): export also xoptions * Add _Py_GetGlobalVariablesAsDict() and _testcapi.get_global_config() * test.pythoninfo: dump also global configuration variables * _testembed now serializes global, core and main configurations using JSON to reuse _Py_GetGlobalVariablesAsDict(), _PyCoreConfig_AsDict() and _PyMainInterpreterConfig_AsDict(), rather than duplicating code. * test_embed.InitConfigTests now test much more configuration variables
Diffstat (limited to 'Lib/test/pythoninfo.py')
-rw-r--r--Lib/test/pythoninfo.py25
1 files changed, 11 insertions, 14 deletions
diff --git a/Lib/test/pythoninfo.py b/Lib/test/pythoninfo.py
index 2b5d6e2..9257fdf 100644
--- a/Lib/test/pythoninfo.py
+++ b/Lib/test/pythoninfo.py
@@ -535,24 +535,21 @@ def collect_gdbm(info_add):
def collect_get_config(info_add):
- # Dump _PyCoreConfig and _PyMainInterpreterConfig
+ # Dump global configuration variables, _PyCoreConfig
+ # and _PyMainInterpreterConfig
try:
- from _testcapi import get_coreconfig
+ from _testcapi import get_global_config, get_core_config, get_main_config
except ImportError:
- pass
- else:
- config = get_coreconfig()
- for key in sorted(config):
- info_add('core_config[%s]' % key, repr(config[key]))
+ return
- try:
- from _testcapi import get_mainconfig
- except ImportError:
- pass
- else:
- config = get_mainconfig()
+ for prefix, get_config_func in (
+ ('global_config', get_global_config),
+ ('core_config', get_core_config),
+ ('main_config', get_main_config),
+ ):
+ config = get_config_func()
for key in sorted(config):
- info_add('main_config[%s]' % key, repr(config[key]))
+ info_add('%s[%s]' % (prefix, key), repr(config[key]))
def collect_info(info):