mirror of
https://github.com/bjw-s-labs/helm-charts.git
synced 2025-07-03 16:37:04 +02:00
123 lines
3.5 KiB
YAML
123 lines
3.5 KiB
YAML
---
|
|
# yaml-language-server: $schema=https://raw.githubusercontent.com/helm-unittest/helm-unittest/main/schema/helm-testsuite.json
|
|
suite: controller metadata cronjob
|
|
templates:
|
|
- common.yaml
|
|
values:
|
|
- ../_values/controllers_main_default_container.yaml
|
|
set:
|
|
controllers.main.cronjob.schedule: "*/20 * * * *"
|
|
|
|
tests:
|
|
- it: default metadata should pass
|
|
set:
|
|
controllers.main.type: cronjob
|
|
asserts:
|
|
- documentIndex: &ControllerDoc 0
|
|
isKind:
|
|
of: CronJob
|
|
- documentIndex: *ControllerDoc
|
|
notExists:
|
|
path: metadata.annotations
|
|
- documentIndex: *ControllerDoc
|
|
equal:
|
|
path: metadata.labels
|
|
value:
|
|
app.kubernetes.io/component: main
|
|
app.kubernetes.io/instance: RELEASE-NAME
|
|
app.kubernetes.io/managed-by: Helm
|
|
app.kubernetes.io/name: RELEASE-NAME
|
|
helm.sh/chart: common-test-1.0.0
|
|
|
|
- it: custom metadata should pass
|
|
set:
|
|
controllers:
|
|
main:
|
|
type: cronjob
|
|
annotations:
|
|
test_annotation: test
|
|
labels:
|
|
test_label: test
|
|
asserts:
|
|
- documentIndex: &ControllerDoc 0
|
|
isKind:
|
|
of: CronJob
|
|
- documentIndex: *ControllerDoc
|
|
equal:
|
|
path: metadata.annotations
|
|
value:
|
|
test_annotation: test
|
|
- documentIndex: *ControllerDoc
|
|
equal:
|
|
path: metadata.labels
|
|
value:
|
|
app.kubernetes.io/component: main
|
|
app.kubernetes.io/instance: RELEASE-NAME
|
|
app.kubernetes.io/managed-by: Helm
|
|
app.kubernetes.io/name: RELEASE-NAME
|
|
helm.sh/chart: common-test-1.0.0
|
|
test_label: test
|
|
|
|
- it: custom metadata with global metadata should pass
|
|
set:
|
|
global:
|
|
labels:
|
|
global_label: test
|
|
annotations:
|
|
global_annotation: test
|
|
controllers:
|
|
main:
|
|
type: cronjob
|
|
annotations:
|
|
test_annotation: test
|
|
labels:
|
|
test_label: test
|
|
asserts:
|
|
- documentIndex: &ControllerDoc 0
|
|
isKind:
|
|
of: CronJob
|
|
- documentIndex: *ControllerDoc
|
|
equal:
|
|
path: metadata.annotations
|
|
value:
|
|
global_annotation: test
|
|
test_annotation: test
|
|
- documentIndex: *ControllerDoc
|
|
equal:
|
|
path: metadata.labels
|
|
value:
|
|
app.kubernetes.io/component: main
|
|
app.kubernetes.io/instance: RELEASE-NAME
|
|
app.kubernetes.io/managed-by: Helm
|
|
app.kubernetes.io/name: RELEASE-NAME
|
|
global_label: test
|
|
helm.sh/chart: common-test-1.0.0
|
|
test_label: test
|
|
|
|
- it: jobTemplate metadata should pass
|
|
set:
|
|
controllers:
|
|
main:
|
|
type: cronjob
|
|
pod:
|
|
annotations:
|
|
test_annotation: test
|
|
labels:
|
|
test_label: test
|
|
asserts:
|
|
- documentIndex: &ControllerDoc 0
|
|
isKind:
|
|
of: CronJob
|
|
- documentIndex: *ControllerDoc
|
|
equal:
|
|
path: spec.jobTemplate.spec.template.metadata.annotations
|
|
value:
|
|
test_annotation: test
|
|
- documentIndex: *ControllerDoc
|
|
equal:
|
|
path: spec.jobTemplate.spec.template.metadata.labels
|
|
value:
|
|
app.kubernetes.io/component: main
|
|
app.kubernetes.io/instance: RELEASE-NAME
|
|
app.kubernetes.io/name: RELEASE-NAME
|
|
test_label: test
|