mirror of
https://github.com/python/cpython.git
synced 2025-08-31 05:58:33 +00:00
[3.11] gh-96853: Restore test coverage for Py_Initialize(Ex) (GH-98874)
* As most of `test_embed` now uses `Py_InitializeFromConfig`, add
a specific test case to cover `Py_Initialize` (and `Py_InitializeEx`)
* Rename `_testembed` init helper to clarify the API used
* Add a `PyConfig_Clear` call in `Py_InitializeEx` to make
the code more obviously correct (it already didn't leak as
none of the dynamically allocated config fields were being
populated, but it's clearer if the wrappers follow the
documented API usage guidelines)
(cherry picked from commit 05e48865be
)
Co-authored-by: Nick Coghlan <ncoghlan@gmail.com>
This commit is contained in:
parent
5efe2eead3
commit
57dd11038f
5 changed files with 57 additions and 19 deletions
|
@ -341,6 +341,12 @@ class EmbeddingTests(EmbeddingTestsMixin, unittest.TestCase):
|
|||
out, err = self.run_embedded_interpreter("test_repeated_init_exec", code)
|
||||
self.assertEqual(out, 'Tests passed\n' * INIT_LOOPS)
|
||||
|
||||
def test_simple_initialization_api(self):
|
||||
# _testembed now uses Py_InitializeFromConfig by default
|
||||
# This case specifically checks Py_Initialize(Ex) still works
|
||||
out, err = self.run_embedded_interpreter("test_repeated_simple_init")
|
||||
self.assertEqual(out, 'Finalized\n' * INIT_LOOPS)
|
||||
|
||||
def test_quickened_static_code_gets_unquickened_at_Py_FINALIZE(self):
|
||||
# https://github.com/python/cpython/issues/92031
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue