suite: service metadata test templates: - common.yaml chart: appVersion: &appVer v9.9.9 tests: - it: should pass with service created with labels and annotations set: label1: label1 label2: global_label2 annotation1: annotation1 annotation2: global_annotation2 global: labels: g_label1: global_label1 g_label2: "{{ .Values.label2 }}" annotations: g_annotation1: global_annotation1 g_annotation2: "{{ .Values.annotation2 }}" service: my-service1: enabled: true primary: true labels: label1: "{{ .Values.label1 }}" label2: label2 annotations: annotation1: "{{ .Values.annotation1 }}" annotation2: annotation2 ports: port-name: enabled: true primary: true port: 12345 my-service2: enabled: true primary: false ports: port-name: enabled: true primary: true port: 1234 workload: my-workload: enabled: true primary: true type: Deployment podSpec: {} asserts: - documentIndex: &serviceDoc 1 isKind: of: Service - documentIndex: *serviceDoc equal: path: metadata.annotations value: annotation1: annotation1 annotation2: annotation2 g_annotation1: global_annotation1 g_annotation2: global_annotation2 - documentIndex: *serviceDoc equal: path: metadata.labels value: app: common-test-1.0.0 release: RELEASE-NAME helm-revision: "0" helm.sh/chart: common-test-1.0.0 app.kubernetes.io/managed-by: Helm app.kubernetes.io/version: *appVer app.kubernetes.io/instance: RELEASE-NAME app.kubernetes.io/name: common-test service.name: my-service1 g_label1: global_label1 g_label2: global_label2 label1: label1 label2: label2 - documentIndex: &otherServiceDoc 2 isKind: of: Service - documentIndex: *otherServiceDoc equal: path: metadata.labels value: service.name: my-service2 app: common-test-1.0.0 app.kubernetes.io/instance: RELEASE-NAME app.kubernetes.io/managed-by: Helm app.kubernetes.io/name: common-test app.kubernetes.io/version: *appVer g_label1: global_label1 g_label2: global_label2 helm-revision: "0" helm.sh/chart: common-test-1.0.0 release: RELEASE-NAME - it: should pass with correct selector with targetSelector set: service: my-service1: enabled: true primary: true targetSelector: my-workload ports: port-name: enabled: true primary: true port: 12345 workload: my-workload: enabled: true primary: true type: Deployment podSpec: {} asserts: - documentIndex: *serviceDoc isKind: of: Service - documentIndex: *serviceDoc equal: path: spec.selector value: pod.name: my-workload app.kubernetes.io/name: common-test app.kubernetes.io/instance: RELEASE-NAME - it: should pass with correct selector without targetSelector set: service: my-service1: enabled: true primary: true ports: port-name: enabled: true primary: true port: 12345 workload: my-workload: enabled: true primary: true type: Deployment podSpec: {} my-workload2: enabled: true type: Deployment podSpec: {} asserts: - documentIndex: &serviceDoc 2 isKind: of: Service - documentIndex: *serviceDoc equal: path: spec.selector value: pod.name: my-workload app.kubernetes.io/name: common-test app.kubernetes.io/instance: RELEASE-NAME