github.com/kaptinlin/jsonschema@v0.4.6/testdata/JSON-Schema-Test-Suite/tests/draft2019-09/anyOf.json (about)

     1  [
     2      {
     3          "description": "anyOf",
     4          "schema": {
     5              "$schema": "https://json-schema.org/draft/2019-09/schema",
     6              "anyOf": [
     7                  {
     8                      "type": "integer"
     9                  },
    10                  {
    11                      "minimum": 2
    12                  }
    13              ]
    14          },
    15          "tests": [
    16              {
    17                  "description": "first anyOf valid",
    18                  "data": 1,
    19                  "valid": true
    20              },
    21              {
    22                  "description": "second anyOf valid",
    23                  "data": 2.5,
    24                  "valid": true
    25              },
    26              {
    27                  "description": "both anyOf valid",
    28                  "data": 3,
    29                  "valid": true
    30              },
    31              {
    32                  "description": "neither anyOf valid",
    33                  "data": 1.5,
    34                  "valid": false
    35              }
    36          ]
    37      },
    38      {
    39          "description": "anyOf with base schema",
    40          "schema": {
    41              "$schema": "https://json-schema.org/draft/2019-09/schema",
    42              "type": "string",
    43              "anyOf" : [
    44                  {
    45                      "maxLength": 2
    46                  },
    47                  {
    48                      "minLength": 4
    49                  }
    50              ]
    51          },
    52          "tests": [
    53              {
    54                  "description": "mismatch base schema",
    55                  "data": 3,
    56                  "valid": false
    57              },
    58              {
    59                  "description": "one anyOf valid",
    60                  "data": "foobar",
    61                  "valid": true
    62              },
    63              {
    64                  "description": "both anyOf invalid",
    65                  "data": "foo",
    66                  "valid": false
    67              }
    68          ]
    69      },
    70      {
    71          "description": "anyOf with boolean schemas, all true",
    72          "schema": {
    73              "$schema": "https://json-schema.org/draft/2019-09/schema",
    74              "anyOf": [true, true]
    75          },
    76          "tests": [
    77              {
    78                  "description": "any value is valid",
    79                  "data": "foo",
    80                  "valid": true
    81              }
    82          ]
    83      },
    84      {
    85          "description": "anyOf with boolean schemas, some true",
    86          "schema": {
    87              "$schema": "https://json-schema.org/draft/2019-09/schema",
    88              "anyOf": [true, false]
    89          },
    90          "tests": [
    91              {
    92                  "description": "any value is valid",
    93                  "data": "foo",
    94                  "valid": true
    95              }
    96          ]
    97      },
    98      {
    99          "description": "anyOf with boolean schemas, all false",
   100          "schema": {
   101              "$schema": "https://json-schema.org/draft/2019-09/schema",
   102              "anyOf": [false, false]
   103          },
   104          "tests": [
   105              {
   106                  "description": "any value is invalid",
   107                  "data": "foo",
   108                  "valid": false
   109              }
   110          ]
   111      },
   112      {
   113          "description": "anyOf complex types",
   114          "schema": {
   115              "$schema": "https://json-schema.org/draft/2019-09/schema",
   116              "anyOf": [
   117                  {
   118                      "properties": {
   119                          "bar": {"type": "integer"}
   120                      },
   121                      "required": ["bar"]
   122                  },
   123                  {
   124                      "properties": {
   125                          "foo": {"type": "string"}
   126                      },
   127                      "required": ["foo"]
   128                  }
   129              ]
   130          },
   131          "tests": [
   132              {
   133                  "description": "first anyOf valid (complex)",
   134                  "data": {"bar": 2},
   135                  "valid": true
   136              },
   137              {
   138                  "description": "second anyOf valid (complex)",
   139                  "data": {"foo": "baz"},
   140                  "valid": true
   141              },
   142              {
   143                  "description": "both anyOf valid (complex)",
   144                  "data": {"foo": "baz", "bar": 2},
   145                  "valid": true
   146              },
   147              {
   148                  "description": "neither anyOf valid (complex)",
   149                  "data": {"foo": 2, "bar": "quux"},
   150                  "valid": false
   151              }
   152          ]
   153      },
   154      {
   155          "description": "anyOf with one empty schema",
   156          "schema": {
   157              "$schema": "https://json-schema.org/draft/2019-09/schema",
   158              "anyOf": [
   159                  { "type": "number" },
   160                  {}
   161              ]
   162          },
   163          "tests": [
   164              {
   165                  "description": "string is valid",
   166                  "data": "foo",
   167                  "valid": true
   168              },
   169              {
   170                  "description": "number is valid",
   171                  "data": 123,
   172                  "valid": true
   173              }
   174          ]
   175      },
   176      {
   177          "description": "nested anyOf, to check validation semantics",
   178          "schema": {
   179              "$schema": "https://json-schema.org/draft/2019-09/schema",
   180              "anyOf": [
   181                  {
   182                      "anyOf": [
   183                          {
   184                              "type": "null"
   185                          }
   186                      ]
   187                  }
   188              ]
   189          },
   190          "tests": [
   191              {
   192                  "description": "null is valid",
   193                  "data": null,
   194                  "valid": true
   195              },
   196              {
   197                  "description": "anything non-null is invalid",
   198                  "data": 123,
   199                  "valid": false
   200              }
   201          ]
   202      }
   203  ]