@ -287,6 +287,7 @@ class InitConfigTests(EmbeddingTestsMixin, unittest.TestCase):
IGNORE_CONFIG = object ( )
IGNORE_CONFIG = object ( )
PRE_CONFIG_COMPAT = {
PRE_CONFIG_COMPAT = {
' _config_init ' : API_COMPAT ,
' allocator ' : PYMEM_ALLOCATOR_NOT_SET ,
' allocator ' : PYMEM_ALLOCATOR_NOT_SET ,
' parse_argv ' : 0 ,
' parse_argv ' : 0 ,
' configure_locale ' : 1 ,
' configure_locale ' : 1 ,
@ -299,11 +300,13 @@ class InitConfigTests(EmbeddingTestsMixin, unittest.TestCase):
' legacy_windows_fs_encoding ' : 0 ,
' legacy_windows_fs_encoding ' : 0 ,
} )
} )
PRE_CONFIG_PYTHON = dict ( PRE_CONFIG_COMPAT ,
PRE_CONFIG_PYTHON = dict ( PRE_CONFIG_COMPAT ,
_config_init = API_PYTHON ,
parse_argv = 1 ,
parse_argv = 1 ,
coerce_c_locale = GET_DEFAULT_CONFIG ,
coerce_c_locale = GET_DEFAULT_CONFIG ,
utf8_mode = GET_DEFAULT_CONFIG ,
utf8_mode = GET_DEFAULT_CONFIG ,
)
)
PRE_CONFIG_ISOLATED = dict ( PRE_CONFIG_COMPAT ,
PRE_CONFIG_ISOLATED = dict ( PRE_CONFIG_COMPAT ,
_config_init = API_ISOLATED ,
configure_locale = 0 ,
configure_locale = 0 ,
isolated = 1 ,
isolated = 1 ,
use_environment = 0 ,
use_environment = 0 ,
@ -388,10 +391,12 @@ class InitConfigTests(EmbeddingTestsMixin, unittest.TestCase):
} )
} )
CORE_CONFIG_PYTHON = dict ( CORE_CONFIG_COMPAT ,
CORE_CONFIG_PYTHON = dict ( CORE_CONFIG_COMPAT ,
_config_init = API_PYTHON ,
configure_c_stdio = 1 ,
configure_c_stdio = 1 ,
parse_argv = 1 ,
parse_argv = 1 ,
)
)
CORE_CONFIG_ISOLATED = dict ( CORE_CONFIG_COMPAT ,
CORE_CONFIG_ISOLATED = dict ( CORE_CONFIG_COMPAT ,
_config_init = API_ISOLATED ,
isolated = 1 ,
isolated = 1 ,
use_environment = 0 ,
use_environment = 0 ,
user_site_directory = 0 ,
user_site_directory = 0 ,
@ -611,7 +616,6 @@ class InitConfigTests(EmbeddingTestsMixin, unittest.TestCase):
else :
else :
default_config = self . CORE_CONFIG_COMPAT
default_config = self . CORE_CONFIG_COMPAT
expected_config = dict ( default_config , * * expected_config )
expected_config = dict ( default_config , * * expected_config )
expected_config [ ' _config_init ' ] = api
self . get_expected_config ( expected_preconfig ,
self . get_expected_config ( expected_preconfig ,
expected_config , env ,
expected_config , env ,
@ -708,10 +712,9 @@ class InitConfigTests(EmbeddingTestsMixin, unittest.TestCase):
self . check_config ( " test_init_from_config " , config , preconfig ,
self . check_config ( " test_init_from_config " , config , preconfig ,
api = API_COMPAT )
api = API_COMPAT )
def test_init_env ( self ) :
def test_init_compat_ env ( self ) :
preconfig = {
preconfig = {
' allocator ' : PYMEM_ALLOCATOR_MALLOC ,
' allocator ' : PYMEM_ALLOCATOR_MALLOC ,
' utf8_mode ' : 1 ,
}
}
config = {
config = {
' use_hash_seed ' : 1 ,
' use_hash_seed ' : 1 ,
@ -732,9 +735,36 @@ class InitConfigTests(EmbeddingTestsMixin, unittest.TestCase):
' faulthandler ' : 1 ,
' faulthandler ' : 1 ,
' warnoptions ' : [ ' EnvVar ' ] ,
' warnoptions ' : [ ' EnvVar ' ] ,
}
}
self . check_config ( " test_init_env " , config , preconfig ,
self . check_config ( " test_init_compat_ env " , config , preconfig ,
api = API_COMPAT )
api = API_COMPAT )
def test_init_python_env ( self ) :
preconfig = {
' allocator ' : PYMEM_ALLOCATOR_MALLOC ,
' utf8_mode ' : 1 ,
}
config = {
' use_hash_seed ' : 1 ,
' hash_seed ' : 42 ,
' tracemalloc ' : 2 ,
' import_time ' : 1 ,
' malloc_stats ' : 1 ,
' inspect ' : 1 ,
' optimization_level ' : 2 ,
' module_search_path_env ' : ' /my/path ' ,
' pycache_prefix ' : ' env_pycache_prefix ' ,
' write_bytecode ' : 0 ,
' verbose ' : 1 ,
' buffered_stdio ' : 0 ,
' stdio_encoding ' : ' iso8859-1 ' ,
' stdio_errors ' : ' replace ' ,
' user_site_directory ' : 0 ,
' faulthandler ' : 1 ,
' warnoptions ' : [ ' EnvVar ' ] ,
}
self . check_config ( " test_init_python_env " , config , preconfig ,
api = API_PYTHON )
def test_init_env_dev_mode ( self ) :
def test_init_env_dev_mode ( self ) :
preconfig = dict ( allocator = PYMEM_ALLOCATOR_DEBUG )
preconfig = dict ( allocator = PYMEM_ALLOCATOR_DEBUG )
config = dict ( dev_mode = 1 ,
config = dict ( dev_mode = 1 ,