我正在编写一个指定一组入口点的 Python 模块,以便其他主机模块可以发现新的功能。我正在遵循指定的 setuptools 方法官方文档 https://setuptools.readthedocs.io/en/latest/userguide/entry_point.html#entry-points.
作为示例,下面的代码片段显示了通过sample.contribution
名为 hello-world ,它指向 timmins.hello_world 属性。
[options.entry_points]
sample.contribution =
hello-world = timmins:hello_world
假设主机插件定义了如下方法来加载sample.contributions 扩展。
def load_contributions():
...
我想要做的是编写一个测试,确保主机模块正确加载entry_point。目前,测试此类入口点加载的唯一方法是构建一个轮子并 pip-install 它。安装完成后,entry_point就可以成功加载。
所以,我的问题是......有什么方法可以在 setup.py (或 setup.cfg)中添加指定的entry_points,以便可以在测试执行期间加载它们?也就是说,对定义入口点的模块进行测试,该入口点在调用时返回贡献load_contributions
method
也许使用tox https://tox.readthedocs.io/en/latest/index.html执行一组测试命令是正确的选择。
这种方法将开发的模块安装到虚拟环境中,因此在调用命令时会加载其入口点。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)