$schema: "http://json-schema.org/draft-06/schema#"

title: compute v1 UrlMapTest export schema
description: A gcloud export/import command YAML validation schema.
type: object
additionalProperties: false
properties:
  COMMENT:
    type: object
    description: User specified info ignored by gcloud import.
    additionalProperties: false
    properties:
      template-id:
        type: string
      region:
        type: string
      description:
        type: string
      date:
        type: string
      version:
        type: string
  UNKNOWN:
    type: array
    description: Unknown API fields that cannot be imported.
    items:
      type: string
  backendServiceWeight:
    description: |-
      The weight to use for the supplied host and path when using advanced
      routing rules that involve traffic splitting.
    type: integer
  description:
    description: Description of this test case.
    type: string
  expectedOutputUrl:
    description: |-
      The expected output URL evaluated by the load balancer containing the
      scheme, host, path and query parameters. For rules that forward requests
      to backends, the test passes only when expectedOutputUrl matches the
      request forwarded by the load balancer to backends. For rules with
      urlRewrite, the test verifies that the forwarded request matches
      hostRewrite and pathPrefixRewrite in the urlRewrite action. When service
      is specified, expectedOutputUrl`s scheme is ignored. For rules with
      urlRedirect, the test passes only if expectedOutputUrl matches the URL in
      the load balancer's redirect response. If urlRedirect specifies
      https_redirect, the test passes only if the scheme in expectedOutputUrl is
      also set to HTTPS. If urlRedirect specifies strip_query, the test passes
      only if expectedOutputUrl does not contain any query parameters.
      expectedOutputUrl is optional when service is specified.
    type: string
  expectedRedirectResponseCode:
    description: |-
      For rules with urlRedirect, the test passes only if
      expectedRedirectResponseCode matches the HTTP status code in load
      balancer's redirect response. expectedRedirectResponseCode cannot be set
      when service is set.
    type: integer
  expectedUrlRedirect:
    description: |-
      The expected URL that should be redirected to for the host and path being
      tested. [Deprecated] This field is deprecated. Use expected_output_url
      instead.
    type: string
  headers:
    description: |-
      HTTP headers for this request. If headers contains a host header, then
      host must also match the header value.
    type: array
    items:
      $ref: UrlMapTestHeader.yaml
  host:
    description: |-
      Host portion of the URL. If headers contains a host header, then host
      must also match the header value.
    type: string
  path:
    description: Path portion of the URL.
    type: string
  service:
    description: |-
      Expected BackendService or BackendBucket resource the given URL should
      be mapped to. The service field cannot be set if
      expectedRedirectResponseCode is set.
    type: string
