pvc_data_test.yaml 4.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171
  1. suite: pvc data name test
  2. templates:
  3. - common.yaml
  4. tests:
  5. - it: should create pvc
  6. set:
  7. persistence:
  8. my-volume1:
  9. enabled: true
  10. type: pvc
  11. asserts:
  12. - documentIndex: &pvcDoc 0
  13. isKind:
  14. of: PersistentVolumeClaim
  15. - documentIndex: *pvcDoc
  16. isAPIVersion:
  17. of: v1
  18. - documentIndex: *pvcDoc
  19. equal:
  20. path: metadata.name
  21. value: release-name-common-test-my-volume1
  22. - documentIndex: *pvcDoc
  23. equal:
  24. path: spec.accessModes
  25. value:
  26. - ReadWriteOnce
  27. - documentIndex: *pvcDoc
  28. equal:
  29. path: spec.resources.requests.storage
  30. value: 1Gi
  31. - documentIndex: *pvcDoc
  32. isNull:
  33. path: spec.volumeName
  34. - documentIndex: *pvcDoc
  35. isNull:
  36. path: spec.storageClassName
  37. - it: should not create pvc when existingClaim is set
  38. set:
  39. persistence:
  40. my-volume1:
  41. enabled: true
  42. type: pvc
  43. existingClaim: some-existing-claim
  44. asserts:
  45. - hasDocuments:
  46. of: 0
  47. - it: should create pvc with accessModes set as string
  48. set:
  49. some_mode: ReadWriteMany
  50. persistence:
  51. my-volume1:
  52. enabled: true
  53. type: pvc
  54. accessModes: "{{ .Values.some_mode }}"
  55. asserts:
  56. - documentIndex: *pvcDoc
  57. isKind:
  58. of: PersistentVolumeClaim
  59. - documentIndex: *pvcDoc
  60. equal:
  61. path: spec.accessModes
  62. value:
  63. - ReadWriteMany
  64. - it: should create pvc with accessModes set as list
  65. set:
  66. some_mode: ReadWriteMany
  67. persistence:
  68. my-volume1:
  69. enabled: true
  70. type: pvc
  71. accessModes:
  72. - "{{ .Values.some_mode }}"
  73. - ReadWriteOnce
  74. asserts:
  75. - documentIndex: *pvcDoc
  76. isKind:
  77. of: PersistentVolumeClaim
  78. - documentIndex: *pvcDoc
  79. equal:
  80. path: spec.accessModes
  81. value:
  82. - ReadWriteMany
  83. - ReadWriteOnce
  84. - it: should create pvc with size set
  85. set:
  86. some_size: 20Gi
  87. persistence:
  88. my-volume1:
  89. enabled: true
  90. type: pvc
  91. size: "{{ .Values.some_size }}"
  92. asserts:
  93. - documentIndex: *pvcDoc
  94. isKind:
  95. of: PersistentVolumeClaim
  96. - documentIndex: *pvcDoc
  97. equal:
  98. path: spec.resources.requests.storage
  99. value: 20Gi
  100. - it: should create pvc with volumeName set
  101. set:
  102. some_vol_name: some-pv-name
  103. persistence:
  104. my-volume1:
  105. enabled: true
  106. type: pvc
  107. volumeName: "{{ .Values.some_vol_name }}"
  108. asserts:
  109. - documentIndex: *pvcDoc
  110. isKind:
  111. of: PersistentVolumeClaim
  112. - documentIndex: *pvcDoc
  113. equal:
  114. path: spec.volumeName
  115. value: some-pv-name
  116. - it: should create pvc with storageClass set "-"
  117. set:
  118. some_storage_class: "-"
  119. persistence:
  120. my-volume1:
  121. enabled: true
  122. type: pvc
  123. storageClass: "{{ .Values.some_storage_class }}"
  124. asserts:
  125. - documentIndex: *pvcDoc
  126. isKind:
  127. of: PersistentVolumeClaim
  128. - documentIndex: *pvcDoc
  129. equal:
  130. path: spec.storageClassName
  131. value: ""
  132. - it: should create pvc with storageClass set
  133. set:
  134. some_storage_class: "some-storage-class"
  135. persistence:
  136. my-volume1:
  137. enabled: true
  138. type: pvc
  139. storageClass: "{{ .Values.some_storage_class }}"
  140. asserts:
  141. - documentIndex: *pvcDoc
  142. isKind:
  143. of: PersistentVolumeClaim
  144. - documentIndex: *pvcDoc
  145. equal:
  146. path: spec.storageClassName
  147. value: some-storage-class
  148. - it: should create pvc with storageClass not set, but have fallbackDefaults set
  149. set:
  150. fallbackDefaults:
  151. storageClass: some-storage-class
  152. persistence:
  153. my-volume1:
  154. enabled: true
  155. type: pvc
  156. asserts:
  157. - documentIndex: *pvcDoc
  158. isKind:
  159. of: PersistentVolumeClaim
  160. - documentIndex: *pvcDoc
  161. equal:
  162. path: spec.storageClassName
  163. value: some-storage-class