grafana_dashboard_test.yaml 2.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394
  1. suite: test grafana dashboard
  2. templates:
  3. - grafana-dashboard.yaml
  4. tests:
  5. - it: should not render grafana dashboard when disabled
  6. set:
  7. grafanaDashboard.enabled: false
  8. asserts:
  9. - hasDocuments:
  10. count: 0
  11. - it: should render grafana dashboard when enabled
  12. set:
  13. grafanaDashboard.enabled: true
  14. asserts:
  15. - hasDocuments:
  16. count: 1
  17. - isKind:
  18. of: ConfigMap
  19. - equal:
  20. path: metadata.name
  21. value: RELEASE-NAME-external-secrets-dashboard
  22. - equal:
  23. path: metadata.labels["grafana_dashboard"]
  24. value: "1"
  25. - it: should include extraLabels when set
  26. set:
  27. grafanaDashboard.enabled: true
  28. grafanaDashboard.extraLabels:
  29. custom-label: custom-value
  30. another-label: another-value
  31. asserts:
  32. - hasDocuments:
  33. count: 1
  34. - equal:
  35. path: metadata.labels["custom-label"]
  36. value: custom-value
  37. - equal:
  38. path: metadata.labels["another-label"]
  39. value: another-value
  40. - equal:
  41. path: metadata.labels["grafana_dashboard"]
  42. value: "1"
  43. - it: should include annotations when set
  44. set:
  45. grafanaDashboard.enabled: true
  46. grafanaDashboard.annotations:
  47. custom-annotation: custom-value
  48. asserts:
  49. - hasDocuments:
  50. count: 1
  51. - equal:
  52. path: metadata.annotations["custom-annotation"]
  53. value: custom-value
  54. - it: should override sidecarLabel and sidecarLabelValue
  55. set:
  56. grafanaDashboard.enabled: true
  57. grafanaDashboard.sidecarLabel: custom-dashboard-label
  58. grafanaDashboard.sidecarLabelValue: "custom-value"
  59. asserts:
  60. - hasDocuments:
  61. count: 1
  62. - equal:
  63. path: metadata.labels["custom-dashboard-label"]
  64. value: "custom-value"
  65. - it: should combine extraLabels with default labels
  66. set:
  67. grafanaDashboard.enabled: true
  68. grafanaDashboard.extraLabels:
  69. environment: production
  70. team: platform
  71. fullnameOverride: my-external-secrets
  72. asserts:
  73. - hasDocuments:
  74. count: 1
  75. - equal:
  76. path: metadata.labels["environment"]
  77. value: production
  78. - equal:
  79. path: metadata.labels["team"]
  80. value: platform
  81. - equal:
  82. path: metadata.labels["grafana_dashboard"]
  83. value: "1"
  84. - equal:
  85. path: metadata.labels["app.kubernetes.io/name"]
  86. value: external-secrets
  87. - it: should include dashboard data
  88. set:
  89. grafanaDashboard.enabled: true
  90. asserts:
  91. - hasDocuments:
  92. count: 1
  93. - exists:
  94. path: data["external-secrets.json"]