Files
chart/library/common-test/tests/persistence/pvc_data_test.yaml
Stavros Kois 1e5e1b8ef8 NAS-123350 / 24.04 / Add support in common for nfs/smb pvc (#1422)
* Empty-Commit

* temp commit

* make sure that we use the pv

* typo

* add validation

* typo

* cleanup validation and add secret for smb

* revert

* add some tets

* add more tests

* add more tests

* more tests

* rename to share

* rename

* moar tests

* clean

* add some docs

* fix name uniqueness and tests

* make mountOptions validation a bit better

* update docs
2023-08-24 17:40:31 +03:00

172 lines
4.2 KiB
YAML

suite: pvc data name test
templates:
- common.yaml
tests:
- it: should create pvc
set:
persistence:
my-volume1:
enabled: true
type: pvc
asserts:
- documentIndex: &pvcDoc 0
isKind:
of: PersistentVolumeClaim
- documentIndex: *pvcDoc
isAPIVersion:
of: v1
- documentIndex: *pvcDoc
equal:
path: metadata.name
value: release-name-common-test-my-volume1
- documentIndex: *pvcDoc
equal:
path: spec.accessModes
value:
- ReadWriteOnce
- documentIndex: *pvcDoc
equal:
path: spec.resources.requests.storage
value: 1Gi
- documentIndex: *pvcDoc
isNull:
path: spec.volumeName
- documentIndex: *pvcDoc
isNull:
path: spec.storageClassName
- it: should not create pvc when existingClaim is set
set:
persistence:
my-volume1:
enabled: true
type: pvc
existingClaim: some-existing-claim
asserts:
- hasDocuments:
of: 0
- it: should create pvc with accessModes set as string
set:
some_mode: ReadWriteMany
persistence:
my-volume1:
enabled: true
type: pvc
accessModes: "{{ .Values.some_mode }}"
asserts:
- documentIndex: *pvcDoc
isKind:
of: PersistentVolumeClaim
- documentIndex: *pvcDoc
equal:
path: spec.accessModes
value:
- ReadWriteMany
- it: should create pvc with accessModes set as list
set:
some_mode: ReadWriteMany
persistence:
my-volume1:
enabled: true
type: pvc
accessModes:
- "{{ .Values.some_mode }}"
- ReadWriteOnce
asserts:
- documentIndex: *pvcDoc
isKind:
of: PersistentVolumeClaim
- documentIndex: *pvcDoc
equal:
path: spec.accessModes
value:
- ReadWriteMany
- ReadWriteOnce
- it: should create pvc with size set
set:
some_size: 20Gi
persistence:
my-volume1:
enabled: true
type: pvc
size: "{{ .Values.some_size }}"
asserts:
- documentIndex: *pvcDoc
isKind:
of: PersistentVolumeClaim
- documentIndex: *pvcDoc
equal:
path: spec.resources.requests.storage
value: 20Gi
- it: should create pvc with volumeName set
set:
some_vol_name: some-pv-name
persistence:
my-volume1:
enabled: true
type: pvc
volumeName: "{{ .Values.some_vol_name }}"
asserts:
- documentIndex: *pvcDoc
isKind:
of: PersistentVolumeClaim
- documentIndex: *pvcDoc
equal:
path: spec.volumeName
value: some-pv-name
- it: should create pvc with storageClass set "-"
set:
some_storage_class: "-"
persistence:
my-volume1:
enabled: true
type: pvc
storageClass: "{{ .Values.some_storage_class }}"
asserts:
- documentIndex: *pvcDoc
isKind:
of: PersistentVolumeClaim
- documentIndex: *pvcDoc
equal:
path: spec.storageClassName
value: ""
- it: should create pvc with storageClass set
set:
some_storage_class: "some-storage-class"
persistence:
my-volume1:
enabled: true
type: pvc
storageClass: "{{ .Values.some_storage_class }}"
asserts:
- documentIndex: *pvcDoc
isKind:
of: PersistentVolumeClaim
- documentIndex: *pvcDoc
equal:
path: spec.storageClassName
value: some-storage-class
- it: should create pvc with storageClass not set, but have fallbackDefaults set
set:
fallbackDefaults:
storageClass: some-storage-class
persistence:
my-volume1:
enabled: true
type: pvc
asserts:
- documentIndex: *pvcDoc
isKind:
of: PersistentVolumeClaim
- documentIndex: *pvcDoc
equal:
path: spec.storageClassName
value: some-storage-class