mirror of
https://github.com/bjw-s-labs/helm-charts.git
synced 2025-07-03 16:37:04 +02:00
Co-authored-by: lab-assistant[bot] <180935599+lab-assistant[bot]@users.noreply.github.com>
114 lines
3.1 KiB
YAML
114 lines
3.1 KiB
YAML
---
|
|
# yaml-language-server: $schema=https://raw.githubusercontent.com/helm-unittest/helm-unittest/main/schema/helm-testsuite.json
|
|
suite: route - fields - backendRefs
|
|
templates:
|
|
- common.yaml
|
|
values:
|
|
- ../_values/controllers_main_default_container.yaml
|
|
tests:
|
|
- it: backendRefs can be configured by passing in a service name
|
|
set:
|
|
route.main:
|
|
parentRefs:
|
|
- name: parentName
|
|
namespace: parentNamespace
|
|
rules:
|
|
- backendRefs:
|
|
- group: ""
|
|
kind: Service
|
|
name: RELEASE-NAME
|
|
namespace: NAMESPACE
|
|
port: 8080
|
|
weight: 1
|
|
documentSelector:
|
|
path: $[?(@.kind == "HTTPRoute")].metadata.name
|
|
value: release-name
|
|
asserts:
|
|
- equal:
|
|
path: spec.rules[0].backendRefs[0]
|
|
value:
|
|
group: ""
|
|
kind: Service
|
|
name: RELEASE-NAME
|
|
namespace: NAMESPACE
|
|
port: 8080
|
|
weight: 1
|
|
|
|
- it: backendRefs can be configured by passing in a service identifier
|
|
values:
|
|
- ../_values/service_main_default.yaml
|
|
set:
|
|
route.main:
|
|
parentRefs:
|
|
- name: parentName
|
|
namespace: parentNamespace
|
|
rules:
|
|
- backendRefs:
|
|
- identifier: main
|
|
port: 8080
|
|
documentSelector:
|
|
path: $[?(@.kind == "HTTPRoute")].metadata.name
|
|
value: release-name
|
|
asserts:
|
|
- equal:
|
|
path: spec.rules[0].backendRefs[0]
|
|
value:
|
|
group: ""
|
|
kind: Service
|
|
name: release-name
|
|
namespace: NAMESPACE
|
|
port: 8080
|
|
weight: 1
|
|
|
|
- it: custom service reference should pass
|
|
set:
|
|
route.main:
|
|
parentRefs:
|
|
- name: parentName
|
|
namespace: parentNamespace
|
|
rules:
|
|
- backendRefs:
|
|
- group: test
|
|
name: pathService
|
|
port: 1234
|
|
namespace: serviceNamespace
|
|
weight: 123
|
|
documentSelector:
|
|
path: $[?(@.kind == "HTTPRoute")].metadata.name
|
|
value: release-name
|
|
asserts:
|
|
- equal:
|
|
path: spec.rules[0].backendRefs[0]
|
|
value:
|
|
group: test
|
|
kind: Service
|
|
name: pathService
|
|
namespace: serviceNamespace
|
|
port: 1234
|
|
weight: 123
|
|
|
|
- it: custom service with filter should pass
|
|
set:
|
|
route.main:
|
|
parentRefs:
|
|
- name: parentName
|
|
namespace: parentNamespace
|
|
rules:
|
|
- filters:
|
|
- type: RequestRedirect
|
|
requestRedirect:
|
|
scheme: https
|
|
statusCode: 301
|
|
documentSelector:
|
|
path: $[?(@.kind == "HTTPRoute")].metadata.name
|
|
value: release-name
|
|
asserts:
|
|
- equal:
|
|
path: spec.rules[0].filters[0]
|
|
value:
|
|
type: RequestRedirect
|
|
requestRedirect:
|
|
scheme: https
|
|
statusCode: 301
|
|
- notExists:
|
|
path: spec.rules[0].backendRefs[0]
|