Skip to content

Commit 1ef8f57

Browse files
committed
refactor: mock pureomapi dependency
1 parent f59fe81 commit 1ef8f57

1 file changed

Lines changed: 17 additions & 0 deletions

File tree

rtd-docs/_scripts/get_api_spec.py

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -127,6 +127,22 @@ def _patch_simplestreams():
127127
sys.modules["simplestreams.objectstores"] = simplestreams.objectstores
128128

129129

130+
def _patch_pypureomapi():
131+
"""Patch pypureomapi module so imports succeed without the package installed."""
132+
import sys
133+
from unittest.mock import MagicMock
134+
135+
pypureomapi = MagicMock()
136+
pypureomapi.Omapi = MagicMock()
137+
pypureomapi.OMAPI_OP_STATUS = MagicMock()
138+
pypureomapi.OMAPI_OP_UPDATE = MagicMock()
139+
pypureomapi.OmapiError = MagicMock()
140+
pypureomapi.OmapiMessage = MagicMock()
141+
pypureomapi.pack_ip = MagicMock()
142+
143+
sys.modules["pypureomapi"] = pypureomapi
144+
145+
130146
def generate_api_description_from_source():
131147
if "DJANGO_SETTINGS_MODULE" not in os.environ:
132148
os.environ.setdefault(
@@ -156,6 +172,7 @@ def get_openapi_spec() -> dict[str, str | Any]:
156172
_patch_curtin()
157173
_patch_tftp()
158174
_patch_simplestreams()
175+
_patch_pypureomapi()
159176
return generate_api_description_from_source()
160177

161178

0 commit comments

Comments
 (0)