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