summaryrefslogtreecommitdiff
path: root/Lib
diff options
context:
space:
mode:
authorVictor Stinner <vstinner@redhat.com>2019-08-23 21:16:51 +0200
committerGitHub <noreply@github.com>2019-08-23 21:16:51 +0200
commitaf84a88ef8b3288da528d2f52b7d3fbafb8dc8a6 (patch)
treeb9f0a48a09eb7783ee3b35e9f2381ea2f791b9d9 /Lib
parent3921d12174c1998d9df7a08d036a7fef2d587a64 (diff)
downloadcpython-git-af84a88ef8b3288da528d2f52b7d3fbafb8dc8a6.tar.gz
bpo-36763: PyConfig_Read() handles PySys_AddXOption() (GH-15431) (GH-15435)
PyConfig_Read() is now responsible to handle early calls to PySys_AddXOption() and PySys_AddWarnOption(). Options added by PySys_AddXOption() are now handled the same way than PyConfig.xoptions and command line -X options. For example, PySys_AddXOption(L"faulthandler") enables faulthandler as expected. (cherry picked from commit 120b707a6d43452e067daa55a8fdca69f9424abc)
Diffstat (limited to 'Lib')
-rw-r--r--Lib/test/test_embed.py17
1 files changed, 17 insertions, 0 deletions
diff --git a/Lib/test/test_embed.py b/Lib/test/test_embed.py
index ef2ef64562..e02acbc6be 100644
--- a/Lib/test/test_embed.py
+++ b/Lib/test/test_embed.py
@@ -901,6 +901,23 @@ class InitConfigTests(EmbeddingTestsMixin, unittest.TestCase):
api=API_PYTHON,
modify_path_cb=modify_path)
+ def test_init_sys_add(self):
+ config = {
+ 'faulthandler': 1,
+ 'xoptions': [
+ 'config_xoption',
+ 'cmdline_xoption',
+ 'sysadd_xoption',
+ 'faulthandler',
+ ],
+ 'warnoptions': [
+ 'ignore:::config_warnoption',
+ 'ignore:::cmdline_warnoption',
+ 'ignore:::sysadd_warnoption',
+ ],
+ }
+ self.check_all_configs("test_init_sys_add", config, api=API_PYTHON)
+
def test_init_run_main(self):
code = ('import _testinternalcapi, json; '
'print(json.dumps(_testinternalcapi.get_configs()))')