github.com/kaptinlin/jsonschema@v0.4.6/testdata/JSON-Schema-Test-Suite/tests/draft2020-12/optional/format/time.json (about)

     1  [
     2      {
     3          "description": "validation of time strings",
     4          "schema": {
     5              "$schema": "https://json-schema.org/draft/2020-12/schema",
     6              "format": "time"
     7          },
     8          "tests": [
     9              {
    10                  "description": "all string formats ignore integers",
    11                  "data": 12,
    12                  "valid": true
    13              },
    14              {
    15                  "description": "all string formats ignore floats",
    16                  "data": 13.7,
    17                  "valid": true
    18              },
    19              {
    20                  "description": "all string formats ignore objects",
    21                  "data": {},
    22                  "valid": true
    23              },
    24              {
    25                  "description": "all string formats ignore arrays",
    26                  "data": [],
    27                  "valid": true
    28              },
    29              {
    30                  "description": "all string formats ignore booleans",
    31                  "data": false,
    32                  "valid": true
    33              },
    34              {
    35                  "description": "all string formats ignore nulls",
    36                  "data": null,
    37                  "valid": true
    38              },
    39              {
    40                  "description": "a valid time string",
    41                  "data": "08:30:06Z",
    42                  "valid": true
    43              },
    44              {
    45                  "description": "invalid time string with extra leading zeros",
    46                  "data": "008:030:006Z",
    47                  "valid": false
    48              },
    49              {
    50                  "description": "invalid time string with no leading zero for single digit",
    51                  "data": "8:3:6Z",
    52                  "valid": false
    53              },
    54              {
    55                  "description": "hour, minute, second must be two digits",
    56                  "data": "8:0030:6Z",
    57                  "valid": false
    58              },
    59              {
    60                  "description": "a valid time string with leap second, Zulu",
    61                  "data": "23:59:60Z",
    62                  "valid": true
    63              },
    64              {
    65                  "description": "invalid leap second, Zulu (wrong hour)",
    66                  "data": "22:59:60Z",
    67                  "valid": false
    68              },
    69              {
    70                  "description": "invalid leap second, Zulu (wrong minute)",
    71                  "data": "23:58:60Z",
    72                  "valid": false
    73              },
    74              {
    75                  "description": "valid leap second, zero time-offset",
    76                  "data": "23:59:60+00:00",
    77                  "valid": true
    78              },
    79              {
    80                  "description": "invalid leap second, zero time-offset (wrong hour)",
    81                  "data": "22:59:60+00:00",
    82                  "valid": false
    83              },
    84              {
    85                  "description": "invalid leap second, zero time-offset (wrong minute)",
    86                  "data": "23:58:60+00:00",
    87                  "valid": false
    88              },
    89              {
    90                  "description": "valid leap second, positive time-offset",
    91                  "data": "01:29:60+01:30",
    92                  "valid": true
    93              },
    94              {
    95                  "description": "valid leap second, large positive time-offset",
    96                  "data": "23:29:60+23:30",
    97                  "valid": true
    98              },
    99              {
   100                  "description": "invalid leap second, positive time-offset (wrong hour)",
   101                  "data": "23:59:60+01:00",
   102                  "valid": false
   103              },
   104              {
   105                  "description": "invalid leap second, positive time-offset (wrong minute)",
   106                  "data": "23:59:60+00:30",
   107                  "valid": false
   108              },
   109              {
   110                  "description": "valid leap second, negative time-offset",
   111                  "data": "15:59:60-08:00",
   112                  "valid": true
   113              },
   114              {
   115                  "description": "valid leap second, large negative time-offset",
   116                  "data": "00:29:60-23:30",
   117                  "valid": true
   118              },
   119              {
   120                  "description": "invalid leap second, negative time-offset (wrong hour)",
   121                  "data": "23:59:60-01:00",
   122                  "valid": false
   123              },
   124              {
   125                  "description": "invalid leap second, negative time-offset (wrong minute)",
   126                  "data": "23:59:60-00:30",
   127                  "valid": false
   128              },
   129              {
   130                  "description": "a valid time string with second fraction",
   131                  "data": "23:20:50.52Z",
   132                  "valid": true
   133              },
   134              {
   135                  "description": "a valid time string with precise second fraction",
   136                  "data": "08:30:06.283185Z",
   137                  "valid": true
   138              },
   139              {
   140                  "description": "a valid time string with plus offset",
   141                  "data": "08:30:06+00:20",
   142                  "valid": true
   143              },
   144              {
   145                  "description": "a valid time string with minus offset",
   146                  "data": "08:30:06-08:00",
   147                  "valid": true
   148              },
   149              {
   150                  "description": "hour, minute in time-offset must be two digits",
   151                  "data": "08:30:06-8:000",
   152                  "valid": false
   153              },
   154              {
   155                  "description": "a valid time string with case-insensitive Z",
   156                  "data": "08:30:06z",
   157                  "valid": true
   158              },
   159              {
   160                  "description": "an invalid time string with invalid hour",
   161                  "data": "24:00:00Z",
   162                  "valid": false
   163              },
   164              {
   165                  "description": "an invalid time string with invalid minute",
   166                  "data": "00:60:00Z",
   167                  "valid": false
   168              },
   169              {
   170                  "description": "an invalid time string with invalid second",
   171                  "data": "00:00:61Z",
   172                  "valid": false
   173              },
   174              {
   175                  "description": "an invalid time string with invalid leap second (wrong hour)",
   176                  "data": "22:59:60Z",
   177                  "valid": false
   178              },
   179              {
   180                  "description": "an invalid time string with invalid leap second (wrong minute)",
   181                  "data": "23:58:60Z",
   182                  "valid": false
   183              },
   184              {
   185                  "description": "an invalid time string with invalid time numoffset hour",
   186                  "data": "01:02:03+24:00",
   187                  "valid": false
   188              },
   189              {
   190                  "description": "an invalid time string with invalid time numoffset minute",
   191                  "data": "01:02:03+00:60",
   192                  "valid": false
   193              },
   194              {
   195                  "description": "an invalid time string with invalid time with both Z and numoffset",
   196                  "data": "01:02:03Z+00:30",
   197                  "valid": false
   198              },
   199              {
   200                  "description": "an invalid offset indicator",
   201                  "data": "08:30:06 PST",
   202                  "valid": false
   203              },
   204              {
   205                  "description": "only RFC3339 not all of ISO 8601 are valid",
   206                  "data": "01:01:01,1111",
   207                  "valid": false
   208              },
   209              {
   210                  "description": "no time offset",
   211                  "data": "12:00:00",
   212                  "valid": false
   213              },
   214              {
   215                  "description": "no time offset with second fraction",
   216                  "data": "12:00:00.52",
   217                  "valid": false
   218              },
   219              {
   220                  "description": "invalid non-ASCII '২' (a Bengali 2)",
   221                  "data": "1২:00:00Z",
   222                  "valid": false
   223              },
   224              {
   225                  "description": "offset not starting with plus or minus",
   226                  "data": "08:30:06#00:20",
   227                  "valid": false
   228              },
   229              {
   230                  "description": "contains letters",
   231                  "data": "ab:cd:ef",
   232                  "valid": false
   233              }
   234          ]
   235      }
   236  ]