想象一下以下场景:你有一个名为' foo'的python包。这取决于' bar'。包裹' bar'本身取决于另一个python包,让我们说一下,这取决于cannot be installed on readthedocs.io的C库。因此,' bar'
谦虚地嘲笑class Mock(MagicMock):
@classmethod
def __getattr__(cls, name):
return MagicMock()
MOCK_MODULES = ['shapely', 'shapely.wkt', 'shapely.wkb', 'shapely.geometry', 'shapely.ops']
sys.modules.update((mod_name, Mock()) for mod_name in MOCK_MODULES)
在conf.py文件中。
现在,我想从' bar'中简单地模仿出依赖性,但仍然安装' bar'在RTD上,以便建立“foo”的文档。正常。 我怎么能告诉readthedocs.io模仿&bar; s bar的依赖??
答案 0 :(得分:2)
READTHEDOCS
的
import os
if 'READTHEDOCS' in os.environ:
class Mock(MagicMock):
@classmethod
def __getattr__(cls, name):
return MagicMock()
MOCK_MODULES = ['shapely', 'shapely.wkt', 'shapely.wkb', 'shapely.geometry', 'shapely.ops']
sys.modules.update((mod_name, Mock()) for mod_name in MOCK_MODULES)