Initial commit: stateful OpenStack API laboratory simulator.

Ship Keystone auth, multi-service handlers (Yoga→Dalmatian), Compose/Helm
packaging, API contract packs, and pytest/Pulumi coverage labs.
This commit is contained in:
2026-07-18 04:26:48 +03:00
commit 6033967e6a
509 changed files with 464404 additions and 0 deletions
+36
View File
@@ -0,0 +1,36 @@
"""Web asset loading tests."""
from app.web.assets import console_html
def test_console_html_is_read_from_disk() -> None:
html = console_html()
assert "OpenStack API Emulator" in html
assert "workspace-brand-stack" in html
assert "#ED1C24" in html or "ED1C24" in html
assert 'id="catalog-drawer"' in html
assert "catalog-drawer" in html
assert 'id="catalog-coverage"' in html
assert "Implementation coverage" in html
for required_id in (
"method-desc",
"catalog-meta",
"stat-runtime",
"stat-catalog",
"stat-cluster-name",
"stat-nodes",
"stat-qemu",
"stat-lxc",
"implemented-only",
"btn-contract-apply",
"btn-catalog-refresh",
):
assert f'id="{required_id}"' in html, required_id
assert "Apply as runtime" in html
assert "OPENSTACK_SERIES" in html
assert 'id="help-drawer"' in html
assert 'id="help-badge"' in html
assert 'id="data-badge"' in html
assert 'id="data-drawer"' in html
assert 'id="data-panel"' in html
assert 'id="ui-modal"' in html