如何解决测试入口点贡献
我正在编写一个 Python 模块,它指定了一组入口点,以便其他主机模块可以发现新的功能。我正在遵循 official documentation 中指定的 setuptools 方法。
例如,下面的代码片段显示了通过 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 安装它。一旦安装,entry_point 就可以成功加载了。
所以,我的问题是......有没有办法在 setup.py(或 setup.cfg)中添加指定的 entry_points,以便在测试执行期间加载它们?即,对定义调用 load_contributions
方法时返回贡献的 entry_point 的模块进行测试
解决方法
也许使用 tox 来执行一组测试命令是正确的选择。 这种方法将开发的模块安装到虚拟环境中,因此在调用命令时会加载其入口点。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。