# ---------------------------------------------------------------------------
# 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.
# ---------------------------------------------------------------------------


---
apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition
metadata:
  annotations:
    controller-gen.kubebuilder.io/version: v0.3.0
  labels:
    app: yaks
  name: tests.yaks.citrusframework.org
spec:
  group: yaks.citrusframework.org
  names:
    categories:
    - yaks
    - testing
    kind: Test
    listKind: TestList
    plural: tests
    singular: test
  scope: Namespaced
  versions:
  - additionalPrinterColumns:
    - description: The test phase
      jsonPath: .status.phase
      name: Phase
      type: string
    - description: The total amount of tests
      jsonPath: .status.results.summary.total
      name: Total
      type: string
    - description: Passed tests
      jsonPath: .status.results.summary.passed
      name: Passed
      type: string
    - description: Failed tests
      jsonPath: .status.results.summary.failed
      name: Failed
      type: string
    - description: Skipped tests
      jsonPath: .status.results.summary.skipped
      name: Skipped
      type: string
    - description: Test error details
      jsonPath: .status.errors
      name: Errors
      type: string
    name: v1alpha1
    schema:
      openAPIV3Schema:
        description: Test is the Schema for the tests API
        properties:
          apiVersion:
            description: 'APIVersion defines the versioned schema of this representation
              of an object. Servers should convert recognized schemas to the latest
              internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
            type: string
          kind:
            description: 'Kind is a string value representing the REST resource this
              object represents. Servers may infer this from the endpoint the client
              submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
            type: string
          metadata:
            type: object
          spec:
            description: TestSpec defines the desired state of Test
            properties:
              config:
                description: SettingsSpec--
                properties:
                  content:
                    type: string
                  name:
                    type: string
                type: object
              env:
                items:
                  type: string
                type: array
              resources:
                items:
                  description: ResourceSpec--
                  properties:
                    content:
                      type: string
                    name:
                      type: string
                  type: object
                type: array
              secret:
                type: string
              selenium:
                description: SeleniumSpec--
                properties:
                  image:
                    type: string
                type: object
              source:
                description: SourceSpec--
                properties:
                  content:
                    type: string
                  language:
                    type: string
                  name:
                    type: string
                type: object
            type: object
          status:
            description: TestStatus defines the observed state of Test
            properties:
              digest:
                type: string
              errors:
                type: string
              phase:
                description: TestPhase
                type: string
              results:
                properties:
                  errors:
                    items:
                      type: string
                    type: array
                  suiteName:
                    type: string
                  summary:
                    properties:
                      errors:
                        type: integer
                      failed:
                        type: integer
                      passed:
                        type: integer
                      pending:
                        type: integer
                      skipped:
                        type: integer
                      total:
                        type: integer
                      undefined:
                        type: integer
                    type: object
                  tests:
                    items:
                      properties:
                        classname:
                          type: string
                        errorMessage:
                          type: string
                        errorType:
                          type: string
                        name:
                          type: string
                      type: object
                    type: array
                type: object
              testID:
                type: string
              version:
                type: string
            type: object
        type: object
    served: true
    storage: true
    subresources:
      status: {}
status:
  acceptedNames:
    kind: ""
    plural: ""
  conditions: []
  storedVersions: []
