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

     1  [
     2      {
     3          "description": "const validation",
     4          "schema": {"const": 2},
     5          "tests": [
     6              {
     7                  "description": "same value is valid",
     8                  "data": 2,
     9                  "valid": true
    10              },
    11              {
    12                  "description": "another value is invalid",
    13                  "data": 5,
    14                  "valid": false
    15              },
    16              {
    17                  "description": "another type is invalid",
    18                  "data": "a",
    19                  "valid": false
    20              }
    21          ]
    22      },
    23      {
    24          "description": "const with object",
    25          "schema": {"const": {"foo": "bar", "baz": "bax"}},
    26          "tests": [
    27              {
    28                  "description": "same object is valid",
    29                  "data": {"foo": "bar", "baz": "bax"},
    30                  "valid": true
    31              },
    32              {
    33                  "description": "same object with different property order is valid",
    34                  "data": {"baz": "bax", "foo": "bar"},
    35                  "valid": true
    36              },
    37              {
    38                  "description": "another object is invalid",
    39                  "data": {"foo": "bar"},
    40                  "valid": false
    41              },
    42              {
    43                  "description": "another type is invalid",
    44                  "data": [1, 2],
    45                  "valid": false
    46              }
    47          ]
    48      },
    49      {
    50          "description": "const with array",
    51          "schema": {"const": [{ "foo": "bar" }]},
    52          "tests": [
    53              {
    54                  "description": "same array is valid",
    55                  "data": [{"foo": "bar"}],
    56                  "valid": true
    57              },
    58              {
    59                  "description": "another array item is invalid",
    60                  "data": [2],
    61                  "valid": false
    62              },
    63              {
    64                  "description": "array with additional items is invalid",
    65                  "data": [1, 2, 3],
    66                  "valid": false
    67              }
    68          ]
    69      },
    70      {
    71          "description": "const with null",
    72          "schema": {"const": null},
    73          "tests": [
    74              {
    75                  "description": "null is valid",
    76                  "data": null,
    77                  "valid": true
    78              },
    79              {
    80                  "description": "not null is invalid",
    81                  "data": 0,
    82                  "valid": false
    83              }
    84          ]
    85      },
    86      {
    87          "description": "const with false does not match 0",
    88          "schema": {"const": false},
    89          "tests": [
    90              {
    91                  "description": "false is valid",
    92                  "data": false,
    93                  "valid": true
    94              },
    95              {
    96                  "description": "integer zero is invalid",
    97                  "data": 0,
    98                  "valid": false
    99              },
   100              {
   101                  "description": "float zero is invalid",
   102                  "data": 0.0,
   103                  "valid": false
   104              }
   105          ]
   106      },
   107      {
   108          "description": "const with true does not match 1",
   109          "schema": {"const": true},
   110          "tests": [
   111              {
   112                  "description": "true is valid",
   113                  "data": true,
   114                  "valid": true
   115              },
   116              {
   117                  "description": "integer one is invalid",
   118                  "data": 1,
   119                  "valid": false
   120              },
   121              {
   122                  "description": "float one is invalid",
   123                  "data": 1.0,
   124                  "valid": false
   125              }
   126          ]
   127      },
   128      {
   129          "description": "const with [false] does not match [0]",
   130          "schema": {"const": [false]},
   131          "tests": [
   132              {
   133                  "description": "[false] is valid",
   134                  "data": [false],
   135                  "valid": true
   136              },
   137              {
   138                  "description": "[0] is invalid",
   139                  "data": [0],
   140                  "valid": false
   141              },
   142              {
   143                  "description": "[0.0] is invalid",
   144                  "data": [0.0],
   145                  "valid": false
   146              }
   147          ]
   148      },
   149      {
   150          "description": "const with [true] does not match [1]",
   151          "schema": {"const": [true]},
   152          "tests": [
   153              {
   154                  "description": "[true] is valid",
   155                  "data": [true],
   156                  "valid": true
   157              },
   158              {
   159                  "description": "[1] is invalid",
   160                  "data": [1],
   161                  "valid": false
   162              },
   163              {
   164                  "description": "[1.0] is invalid",
   165                  "data": [1.0],
   166                  "valid": false
   167              }
   168          ]
   169      },
   170      {
   171          "description": "const with {\"a\": false} does not match {\"a\": 0}",
   172          "schema": {"const": {"a": false}},
   173          "tests": [
   174              {
   175                  "description": "{\"a\": false} is valid",
   176                  "data": {"a": false},
   177                  "valid": true
   178              },
   179              {
   180                  "description": "{\"a\": 0} is invalid",
   181                  "data": {"a": 0},
   182                  "valid": false
   183              },
   184              {
   185                  "description": "{\"a\": 0.0} is invalid",
   186                  "data": {"a": 0.0},
   187                  "valid": false
   188              }
   189          ]
   190      },
   191      {
   192          "description": "const with {\"a\": true} does not match {\"a\": 1}",
   193          "schema": {"const": {"a": true}},
   194          "tests": [
   195              {
   196                  "description": "{\"a\": true} is valid",
   197                  "data": {"a": true},
   198                  "valid": true
   199              },
   200              {
   201                  "description": "{\"a\": 1} is invalid",
   202                  "data": {"a": 1},
   203                  "valid": false
   204              },
   205              {
   206                  "description": "{\"a\": 1.0} is invalid",
   207                  "data": {"a": 1.0},
   208                  "valid": false
   209              }
   210          ]
   211      },
   212      {
   213          "description": "const with 0 does not match other zero-like types",
   214          "schema": {"const": 0},
   215          "tests": [
   216              {
   217                  "description": "false is invalid",
   218                  "data": false,
   219                  "valid": false
   220              },
   221              {
   222                  "description": "integer zero is valid",
   223                  "data": 0,
   224                  "valid": true
   225              },
   226              {
   227                  "description": "float zero is valid",
   228                  "data": 0.0,
   229                  "valid": true
   230              },
   231              {
   232                  "description": "empty object is invalid",
   233                  "data": {},
   234                  "valid": false
   235              },
   236              {
   237                  "description": "empty array is invalid",
   238                  "data": [],
   239                  "valid": false
   240              },
   241              {
   242                  "description": "empty string is invalid",
   243                  "data": "",
   244                  "valid": false
   245              }
   246          ]
   247      },
   248      {
   249          "description": "const with 1 does not match true",
   250          "schema": {"const": 1},
   251          "tests": [
   252              {
   253                  "description": "true is invalid",
   254                  "data": true,
   255                  "valid": false
   256              },
   257              {
   258                  "description": "integer one is valid",
   259                  "data": 1,
   260                  "valid": true
   261              },
   262              {
   263                  "description": "float one is valid",
   264                  "data": 1.0,
   265                  "valid": true
   266              }
   267          ]
   268      },
   269      {
   270          "description": "const with -2.0 matches integer and float types",
   271          "schema": {"const": -2.0},
   272          "tests": [
   273              {
   274                  "description": "integer -2 is valid",
   275                  "data": -2,
   276                  "valid": true
   277              },
   278              {
   279                  "description": "integer 2 is invalid",
   280                  "data": 2,
   281                  "valid": false
   282              },
   283              {
   284                  "description": "float -2.0 is valid",
   285                  "data": -2.0,
   286                  "valid": true
   287              },
   288              {
   289                  "description": "float 2.0 is invalid",
   290                  "data": 2.0,
   291                  "valid": false
   292              },
   293              {
   294                  "description": "float -2.00001 is invalid",
   295                  "data": -2.00001,
   296                  "valid": false
   297              }
   298          ]
   299      },
   300      {
   301          "description": "float and integers are equal up to 64-bit representation limits",
   302          "schema": {"const": 9007199254740992},
   303          "tests": [
   304              {
   305                  "description": "integer is valid",
   306                  "data": 9007199254740992,
   307                  "valid": true
   308              },
   309              {
   310                  "description": "integer minus one is invalid",
   311                  "data": 9007199254740991,
   312                  "valid": false
   313              },
   314              {
   315                  "description": "float is valid",
   316                  "data": 9007199254740992.0,
   317                  "valid": true
   318              },
   319              {
   320                  "description": "float minus one is invalid",
   321                  "data": 9007199254740991.0,
   322                  "valid": false
   323              }
   324          ]
   325      },
   326      {
   327          "description": "nul characters in strings",
   328          "schema": { "const": "hello\u0000there" },
   329          "tests": [
   330              {
   331                  "description": "match string with nul",
   332                  "data": "hello\u0000there",
   333                  "valid": true
   334              },
   335              {
   336                  "description": "do not match string lacking nul",
   337                  "data": "hellothere",
   338                  "valid": false
   339              }
   340          ]
   341      }
   342  ]