helm-charts/charts/library/common/test-chart/unittests/statefulset/field_volumeclaimtemplates_test.yaml
Bernd Schorgers a01a89cb13
feat(common): Release common 4.0.0 (#398)
Co-authored-by: lab-assistant[bot] <180935599+lab-assistant[bot]@users.noreply.github.com>
2025-05-16 08:55:14 +02:00

85 lines
2.5 KiB
YAML

---
# yaml-language-server: $schema=https://raw.githubusercontent.com/helm-unittest/helm-unittest/main/schema/helm-testsuite.json
suite: statefulset - fields - volumeClaimTemplates
templates:
- common.yaml
values:
- ../_values/controllers_main_default_container.yaml
set:
controllers.main:
type: statefulset
tests:
- it: default should pass
documentSelector:
path: $[?(@.kind == "StatefulSet")].metadata.name
value: release-name
asserts:
- notExists:
path: spec.volumeClaimTemplates
- it: volumeClaimTemplates should pass
set:
controllers.main:
statefulset:
volumeClaimTemplates:
- name: "storage"
size: "10Gi"
accessMode: "ReadWriteOnce"
documentSelector:
path: $[?(@.kind == "StatefulSet")].metadata.name
value: release-name
asserts:
- equal:
path: spec.volumeClaimTemplates[0]
value:
metadata:
name: storage
spec:
accessModes:
- ReadWriteOnce
resources:
requests:
storage: 10Gi
- it: volumeClaimTemplates with dataSource should pass
set:
controllers.main:
statefulset:
volumeClaimTemplates:
- name: "storage"
size: "10Gi"
accessMode: "ReadWriteOnce"
dataSource:
apiGroup: snapshot.storage.k8s.io
kind: VolumeSnapshot
name: MySnapshot
documentSelector:
path: $[?(@.kind == "StatefulSet")].metadata.name
value: release-name
asserts:
- equal:
path: spec.volumeClaimTemplates[0].spec.dataSource
value:
apiGroup: snapshot.storage.k8s.io
kind: VolumeSnapshot
name: MySnapshot
- it: volumeClaimTemplates with templated dataSource name should pass
set:
controllers.main:
statefulset:
volumeClaimTemplates:
- name: "storage"
size: "10Gi"
accessMode: "ReadWriteOnce"
dataSource:
apiGroup: snapshot.storage.k8s.io
kind: VolumeSnapshot
name: "{{ .Release.Name }}-config"
documentSelector:
path: $[?(@.kind == "StatefulSet")].metadata.name
value: release-name
asserts:
- equal:
path: spec.volumeClaimTemplates[0].spec.dataSource.name
value: RELEASE-NAME-config