test_semantic_governance_frontend_contract.py 1.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758
  1. from pathlib import Path
  2. ROOT = Path(__file__).resolve().parents[2]
  3. def test_semantic_governance_workbench_exposes_cross_domain_release_chain():
  4. page = (
  5. ROOT
  6. / "frontend/src/views/dataGovernance/dataStandard/"
  7. "semanticGovernance.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. standard_center = (
  16. ROOT / "frontend/src/views/dataGovernance/dataStandard/index.vue"
  17. ).read_text(encoding="utf-8")
  18. for text in (
  19. "通用术语与标准",
  20. "业务术语",
  21. "通用代码集",
  22. "指标口径",
  23. "物理字段映射",
  24. "草稿",
  25. "审核中",
  26. "已批准",
  27. "已发布",
  28. "提交审核",
  29. "审批通过",
  30. "发布",
  31. "回滚",
  32. "JSON",
  33. "RDF",
  34. "本平台只治理指标定义,不执行 BI 计算",
  35. ):
  36. assert text in page
  37. for function_name in (
  38. "getSemanticAssets",
  39. "createSemanticAsset",
  40. "submitSemanticAsset",
  41. "reviewSemanticAsset",
  42. "publishSemanticAsset",
  43. "rollbackSemanticAsset",
  44. "getSemanticFieldMappings",
  45. "createSemanticFieldMapping",
  46. "exportSemanticAssets",
  47. ):
  48. assert function_name in api
  49. assert "/data-governance/data-standard/semantic-governance" in routes
  50. assert "semanticGovernance" in routes
  51. assert "通用术语与标准" in standard_center
  52. assert "this.$snackbar.error" in page
  53. assert "this.$message" not in page