test_device_observability_frontend_contract.py 1.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546
  1. from pathlib import Path
  2. ROOT = Path(__file__).resolve().parents[2]
  3. def test_device_observability_workbench_exposes_evidence_bound_contract():
  4. page = (
  5. ROOT
  6. / "frontend/src/views/dataGovernance/development/"
  7. "deviceObservability.vue"
  8. ).read_text(encoding="utf-8")
  9. api = (ROOT / "frontend/src/api/dataDevelopment.js").read_text(
  10. encoding="utf-8"
  11. )
  12. routes = (ROOT / "frontend/src/router/routes.js").read_text(
  13. encoding="utf-8"
  14. )
  15. center = (
  16. ROOT / "frontend/src/views/dataGovernance/development/index.vue"
  17. ).read_text(encoding="utf-8")
  18. model = (
  19. ROOT
  20. / "frontend/src/views/dataGovernance/development/"
  21. "deviceObservabilityModel.js"
  22. ).read_text(encoding="utf-8")
  23. for text in (
  24. "设备关系与根因",
  25. "证据不足,无法确认根因",
  26. "根因候选",
  27. "关系证据",
  28. "运行证据导入",
  29. "不等同于已确认根因",
  30. ):
  31. assert text in page
  32. assert "this.$snackbar.success" in page
  33. assert "this.$snackbar.error" in page
  34. assert "this.$message" not in page
  35. assert "device-observability:edit" in model
  36. assert "getDeviceOperationalEvents" in api
  37. assert "getDeviceEvidenceGraph" in api
  38. assert "getDeviceRootCause" in api
  39. assert "importDeviceOperationalEvidence" in api
  40. assert "/data-governance/development/device-observability" in routes
  41. assert "deviceObservability" in routes
  42. assert "设备关系与根因" in center