helm-charts/charts/library/common/test-chart/unittests/route/field_hostnames_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

68 lines
1.8 KiB
YAML

---
# yaml-language-server: $schema=https://raw.githubusercontent.com/helm-unittest/helm-unittest/main/schema/helm-testsuite.json
suite: route - fields - hostnames
templates:
- common.yaml
values:
- ../_values/controllers_main_default_container.yaml
tests:
- it: hostnames shouldn't be used for TCPRoutes and UDPRoutes
set:
route:
main:
kind: TCPRoute
hostnames:
- chart-test.local
parentRefs:
- name: parentName
namespace: parentNamespace
udp:
kind: UDPRoute
hostnames:
- chart-test.local
parentRefs:
- name: parentName
namespace: parentNamespace
asserts:
- documentSelector:
path: $[?(@.kind == "TCPRoute")].metadata.name
value: release-name-main
notExists:
path: spec.hostnames
- documentSelector:
path: $[?(@.kind == "UDPRoute")].metadata.name
value: release-name-udp
notExists:
path: spec.hostnames
- it: hostname can be configured
set:
route.main:
parentRefs:
- name: parentName
namespace: parentNamespace
hostnames:
- chart-test.local
documentSelector:
path: $[?(@.kind == "HTTPRoute")].metadata.name
value: release-name
asserts:
- equal:
path: spec.hostnames[0]
value: chart-test.local
- it: hostnames support Helm templates
set:
route.main:
parentRefs:
- name: parentName
namespace: parentNamespace
hostnames:
- "{{ .Release.Name }}.local"
documentSelector:
path: $[?(@.kind == "HTTPRoute")].metadata.name
value: release-name
asserts:
- equal:
path: spec.hostnames[0]
value: RELEASE-NAME.local