################################################################################
#  Licensed to the Apache Software Foundation (ASF) under one
#  or more contributor license agreements.  See the NOTICE file
#  distributed with this work for additional information
#  regarding copyright ownership.  The ASF licenses this file
#  to you under the Apache License, Version 2.0 (the
#  "License"); you may not use this file except in compliance
#  with the License.  You may obtain a copy of the License at
#
#      http://www.apache.org/licenses/LICENSE-2.0
#
#  Unless required by applicable law or agreed to in writing, software
#  distributed under the License is distributed on an "AS IS" BASIS,
#  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
#  See the License for the specific language governing permissions and
# limitations under the License.
################################################################################

suite: Test Webhook Service

templates:
- webhook/service.yaml

release:
  name: flink-operator
  namespace: flink-operator

tests:
- it: Should create webhook service if `webhook.validator.create` is `true`
  set:
    webhook:
      validator:
        create: true
  asserts:
  - containsDocument:
      apiVersion: v1
      kind: Service
      name: flink-operator-webhook-service
      namespace: flink-operator

- it: Should create webhook service if `webhook.create` is `true`
  set:
    webhook:
      validator:
        create: false
      create: true
  asserts:
  - containsDocument:
      apiVersion: v1
      kind: Service
      name: flink-operator-webhook-service
      namespace: flink-operator

- it: Should add labels to webhook service if `webhook.serviceLabels` is set
  set:
    webhook:
      create: true
      serviceLabels:
        key1: value1
        key2: value2
  asserts:
  - equal:
      path: metadata.labels.key1
      value: value1
  - equal:
      path: metadata.labels.key2
      value: value2
  