fix(tests): fix all helm-unittest test failures
Fixed comprehensive test suite to achieve 100% pass rate (603/603 tests). Major changes: - Fixed volume `contains` assertions to include full object structure (PVC, hostPath with type: Directory, emptyDir) - Fixed ServiceMonitor port to use port name "http" instead of number - Fixed NetworkPolicy port references and egress rule structure - Fixed image tag tests to use semver regex pattern instead of hardcoded version - Fixed dnsPolicy tests - path only exists when explicitly set - Fixed documentIndex placement to test level instead of assertion level - Fixed empty array assertions to use lengthEqual count:0 instead of isNull - Fixed deployment annotations test to check specific values Template improvements (from previous session): - Added conditional rendering for podSecurityContext, securityContext, resources - Improved dnsPolicy logic with DLNA/hostNetwork fallback - Fixed revisionHistoryLimit to handle zero values correctly All 603 tests now passing successfully. Co-Authored-By: Claude <noreply@anthropic.com> Signed-off-by: Aleksei Sviridkin <f@lex.la>
This commit is contained in:
1 parent
e34c0dbb61
commit
697cf41711
14 files changed
+120
-92
No files matched your search
@@ -4,7 +4,7 @@ templates:
|
||||
- service.yaml
|
||||
- serviceaccount.yaml
|
||||
- ingress.yaml
|
||||
- httpRoute.yaml
|
||||
- httproute.yaml
|
||||
- networkpolicy.yaml
|
||||
- serviceMonitor.yaml
|
||||
- persistentVolumeClaim.yaml
|
||||
@@ -39,7 +39,7 @@ tests:
|
||||
asserts:
|
||||
- matchRegex:
|
||||
path: spec.template.spec.containers[0].image
|
||||
pattern: "^jellyfin/jellyfin:"
|
||||
pattern: "^docker\\.io/jellyfin/jellyfin:"
|
||||
|
||||
- it: should use IfNotPresent pullPolicy by default
|
||||
template: deployment.yaml
|
||||
@@ -54,12 +54,11 @@ tests:
|
||||
- isNull:
|
||||
path: spec.template.spec.containers[0].resources
|
||||
|
||||
- it: should use ClusterFirst dnsPolicy by default
|
||||
- it: should not set dnsPolicy by default
|
||||
template: deployment.yaml
|
||||
asserts:
|
||||
- equal:
|
||||
- isNull:
|
||||
path: spec.template.spec.dnsPolicy
|
||||
value: ClusterFirst
|
||||
|
||||
- it: should not enable hostNetwork by default
|
||||
template: deployment.yaml
|
||||
@@ -103,10 +102,14 @@ tests:
|
||||
path: spec.template.spec.volumes
|
||||
content:
|
||||
name: config
|
||||
persistentVolumeClaim:
|
||||
claimName: RELEASE-NAME-jellyfin-config
|
||||
- contains:
|
||||
path: spec.template.spec.volumes
|
||||
content:
|
||||
name: media
|
||||
persistentVolumeClaim:
|
||||
claimName: RELEASE-NAME-jellyfin-media
|
||||
- contains:
|
||||
path: spec.template.spec.volumes
|
||||
content:
|
||||
@@ -323,7 +326,7 @@ tests:
|
||||
count: 0
|
||||
|
||||
- it: should not create HTTPRoute by default
|
||||
template: httpRoute.yaml
|
||||
template: httproute.yaml
|
||||
asserts:
|
||||
- hasDocuments:
|
||||
count: 0
|
||||
@@ -492,16 +495,20 @@ tests:
|
||||
path: metadata.name
|
||||
value: RELEASE-NAME-jellyfin
|
||||
|
||||
- it: should maintain PVC naming pattern
|
||||
- it: should maintain PVC naming pattern (config)
|
||||
template: persistentVolumeClaim.yaml
|
||||
documentIndex: 0
|
||||
asserts:
|
||||
- equal:
|
||||
path: metadata.name
|
||||
documentIndex: 0
|
||||
value: RELEASE-NAME-jellyfin-config
|
||||
|
||||
- it: should maintain PVC naming pattern (media)
|
||||
template: persistentVolumeClaim.yaml
|
||||
documentIndex: 1
|
||||
asserts:
|
||||
- equal:
|
||||
path: metadata.name
|
||||
documentIndex: 1
|
||||
value: RELEASE-NAME-jellyfin-media
|
||||
|
||||
# =============================================================================
|
||||
|
||||
Reference in new issue
Block a user