helm-charts/charts/library/common-test/tests/service/values_test.yaml
Bernd Schorgers 8b33237e27
feat(common): Release library 3.7.0 (#377)
Signed-off-by: solidDoWant <fred.heinecke@yahoo.com>
Co-authored-by: Patrick Collins <Patricol@users.noreply.github.com>
Co-authored-by: Patrick Collins <patrick.collins@gainbridge.io>
Co-authored-by: Lawrence Gil <larrywtf609@gmail.com>
Co-authored-by: solidDoWant <fred.heinecke@yahoo.com>
2025-02-07 20:03:04 +01:00

122 lines
3 KiB
YAML

---
# yaml-language-server: $schema=https://raw.githubusercontent.com/helm-unittest/helm-unittest/main/schema/helm-testsuite.json
suite: service values
templates:
- common.yaml
values:
- ../_values/controllers_main_default_container.yaml
tests:
- it: ports and services are enabled by default
set:
service:
second:
type: ClusterIP
controller: main
ports:
first:
port: 80
documentSelector: &ServiceSelector
path: kind
value: Service
asserts:
- containsDocument:
kind: Service
apiVersion: v1
name: RELEASE-NAME
- it: service not present when disabled
values:
- ../_values/service_main_default.yaml
set:
service:
main:
enabled: false
asserts:
- not: true
containsDocument:
kind: Service
apiVersion: v1
name: RELEASE-NAME
- it: externalTrafficPolicy can be configured for NodePort service
values:
- ../_values/service_main_default.yaml
set:
service:
main:
type: NodePort
externalTrafficPolicy: Local
documentSelector: *ServiceSelector
asserts:
- equal:
path: spec.externalTrafficPolicy
value: Local
- it: internalTrafficPolicy can be configured
values:
- ../_values/service_main_default.yaml
set:
service:
main:
internalTrafficPolicy: Local
documentSelector: *ServiceSelector
asserts:
- equal:
path: spec.internalTrafficPolicy
value: Local
- it: externalTrafficPolicy can be configured for LoadBalancer service
values:
- ../_values/service_main_default.yaml
set:
service:
main:
type: LoadBalancer
externalTrafficPolicy: Local
documentSelector: *ServiceSelector
asserts:
- equal:
path: spec.externalTrafficPolicy
value: Local
- it: allocateLoadBalancerNodePorts can be set to true
values:
- ../_values/service_main_default.yaml
set:
service:
main:
type: LoadBalancer
allocateLoadBalancerNodePorts: true
documentSelector: *ServiceSelector
asserts:
- equal:
path: spec.allocateLoadBalancerNodePorts
value: true
- it: allocateLoadBalancerNodePorts can be set to false
values:
- ../_values/service_main_default.yaml
set:
service:
main:
type: LoadBalancer
allocateLoadBalancerNodePorts: false
documentSelector: *ServiceSelector
asserts:
- equal:
path: spec.allocateLoadBalancerNodePorts
value: false
- it: externalName can be configured for ExternalName service
values:
- ../_values/service_main_default.yaml
set:
service:
main:
type: ExternalName
externalName: my.database.example.com
documentSelector: *ServiceSelector
asserts:
- equal:
path: spec.externalName
value: my.database.example.com