test(observability): validate sidebar route coverage
All checks were successful
CD Pipeline / deploy (push) Successful in 1m41s
All checks were successful
CD Pipeline / deploy (push) Successful in 1m41s
This commit is contained in:
@@ -246,6 +246,15 @@ def scan_nav_contract() -> list[str]:
|
||||
if active_page not in base_text:
|
||||
findings.append(f"{BASE_PATH}: momo-observability-mode list missing `{active_page}`")
|
||||
|
||||
route_suffix = url.replace("/observability", "", 1) or "/"
|
||||
route_pattern = re.compile(
|
||||
r"@admin_observability_bp\.route\(\s*['\"]"
|
||||
+ re.escape(route_suffix)
|
||||
+ r"['\"]"
|
||||
)
|
||||
if route_text and not route_pattern.search(route_text):
|
||||
findings.append(f"{ROUTE_PATH}: missing route `{route_suffix}` for `{label}`")
|
||||
|
||||
sidebar_observability_links = set(re.findall(r'href="(/observability/[^"]+)"', shell_text))
|
||||
expected_links = {url for _, _, url, _ in OBSERVABILITY_NAV_ITEMS}
|
||||
extra_links = sorted(sidebar_observability_links - expected_links)
|
||||
|
||||
Reference in New Issue
Block a user