# -*- coding: utf-8 -*-"""Test PythonEngine embedding APIs."""import sysimport Systemimport pytestfrom Python.Runtime import PythonEnginedef test_multiple_calls_to_initialize():"""Test that multiple initialize calls are harmless."""try:PythonEngine.Initialize()PythonEngine.Initialize()PythonEngine.Initialize()except Exception:assert False # Initialize() raise an exception.def test_supported_version():major, minor, build, *_ = sys.version_infover = System.Version(major, minor, build)assert PythonEngine.IsSupportedVersion(ver)assert ver >= PythonEngine.MinSupportedVersionassert ver <= PythonEngine.MaxSupportedVersion@pytest.mark.skip(reason="FIXME: test crashes")def test_import_module():"""Test module import."""m = PythonEngine.ImportModule("sys")n = m.GetAttr("__name__")assert n.AsManagedObject(System.String) == "sys"@pytest.mark.skip(reason="FIXME: test freezes")def test_run_string():"""Test the RunString method."""PythonEngine.AcquireLock()code = "import sys; sys.singleline_worked = 1"PythonEngine.RunString(code)assert sys.singleline_worked == 1code = "import sys\nsys.multiline_worked = 1"PythonEngine.RunString(code)assert sys.multiline_worked == 1PythonEngine.ReleaseLock()def test_leak_type():import clrsys._leaked_intptr = clr.GetClrType(System.IntPtr)
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。