--- # yaml-language-server: $schema=https://raw.githubusercontent.com/helm-unittest/helm-unittest/main/schema/helm-testsuite.json suite: "ingress - metadata - annotations" templates: - common.yaml values: - ../_values/ingress_main_default_hosts.yaml - ../_values/controllers_main_default_container.yaml tests: - it: no annotations are set by default documentSelector: path: $[?(@.kind == "Ingress")].metadata.name value: release-name asserts: - notExists: path: metadata.annotations - it: custom annotations set: ingress.main.annotations: test_annotation: test documentSelector: path: $[?(@.kind == "Ingress")].metadata.name value: release-name asserts: - equal: path: metadata.annotations value: test_annotation: test - it: custom annotations mixed with global annotations set: global.annotations: global_annotation: test ingress.main.annotations: test_annotation: test documentSelector: path: $[?(@.kind == "Ingress")].metadata.name value: release-name asserts: - equal: path: metadata.annotations value: global_annotation: test test_annotation: test - it: custom annotations with templates set: ingress.main.annotations: template_annotation1: "{{ .Release.Name | lower }}" template_annotation2: "{{ .Chart.Name | lower }}" documentSelector: path: $[?(@.kind == "Ingress")].metadata.name value: release-name asserts: - equal: path: metadata.annotations["template_annotation1"] value: release-name - equal: path: metadata.annotations["template_annotation2"] value: common-test