Skip to content

Commit 698ce9f

Browse files
committed
Add some more ISO 8601-1:2019 interval tests
Signed-off-by: Juan Cruz Viotti <[email protected]>
1 parent 02a704a commit 698ce9f

File tree

5 files changed

+705
-0
lines changed

5 files changed

+705
-0
lines changed

test/iso/datetime/2019/interval/start-end-calendar-extended.test.json

Lines changed: 145 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -346,6 +346,151 @@
346346
"description": "Valid - reversed order (end before start is syntactically valid per ISO 8601)",
347347
"data": "1985-06-25T10:30:00/1985-04-12T23:20:50",
348348
"valid": true
349+
},
350+
{
351+
"description": "Invalid - start hour 99",
352+
"data": "1985-04-12T99:20:50/1985-06-25T10:30:00",
353+
"valid": false
354+
},
355+
{
356+
"description": "Invalid - end hour 99",
357+
"data": "1985-04-12T23:20:50/1985-06-25T99:30:00",
358+
"valid": false
359+
},
360+
{
361+
"description": "Invalid - start minute 99",
362+
"data": "1985-04-12T23:99:50/1985-06-25T10:30:00",
363+
"valid": false
364+
},
365+
{
366+
"description": "Invalid - end minute 99",
367+
"data": "1985-04-12T23:20:50/1985-06-25T10:99:00",
368+
"valid": false
369+
},
370+
{
371+
"description": "Invalid - start second 99",
372+
"data": "1985-04-12T23:20:99/1985-06-25T10:30:00",
373+
"valid": false
374+
},
375+
{
376+
"description": "Invalid - end second 99",
377+
"data": "1985-04-12T23:20:50/1985-06-25T10:30:99",
378+
"valid": false
379+
},
380+
{
381+
"description": "Invalid - letter in start year",
382+
"data": "I985-04-12T23:20:50/1985-06-25T10:30:00",
383+
"valid": false
384+
},
385+
{
386+
"description": "Invalid - letter in end year",
387+
"data": "1985-04-12T23:20:50/I985-06-25T10:30:00",
388+
"valid": false
389+
},
390+
{
391+
"description": "Invalid - letter in start month",
392+
"data": "1985-0I-12T23:20:50/1985-06-25T10:30:00",
393+
"valid": false
394+
},
395+
{
396+
"description": "Invalid - letter in end month",
397+
"data": "1985-04-12T23:20:50/1985-0I-25T10:30:00",
398+
"valid": false
399+
},
400+
{
401+
"description": "Invalid - letter in start day",
402+
"data": "1985-04-I2T23:20:50/1985-06-25T10:30:00",
403+
"valid": false
404+
},
405+
{
406+
"description": "Invalid - letter in end day",
407+
"data": "1985-04-12T23:20:50/1985-06-I5T10:30:00",
408+
"valid": false
409+
},
410+
{
411+
"description": "Invalid - letter in start hour",
412+
"data": "1985-04-12TI3:20:50/1985-06-25T10:30:00",
413+
"valid": false
414+
},
415+
{
416+
"description": "Invalid - letter in end hour",
417+
"data": "1985-04-12T23:20:50/1985-06-25TI0:30:00",
418+
"valid": false
419+
},
420+
{
421+
"description": "Invalid - letter in start minute",
422+
"data": "1985-04-12T23:I0:50/1985-06-25T10:30:00",
423+
"valid": false
424+
},
425+
{
426+
"description": "Invalid - letter in end minute",
427+
"data": "1985-04-12T23:20:50/1985-06-25T10:I0:00",
428+
"valid": false
429+
},
430+
{
431+
"description": "Invalid - letter in start second",
432+
"data": "1985-04-12T23:20:I0/1985-06-25T10:30:00",
433+
"valid": false
434+
},
435+
{
436+
"description": "Invalid - letter in end second",
437+
"data": "1985-04-12T23:20:50/1985-06-25T10:30:I0",
438+
"valid": false
439+
},
440+
{
441+
"description": "Invalid - too short start datetime",
442+
"data": "1985-04-12T23:20:5/1985-06-25T10:30:00",
443+
"valid": false
444+
},
445+
{
446+
"description": "Invalid - too short end datetime",
447+
"data": "1985-04-12T23:20:50/1985-06-25T10:30:0",
448+
"valid": false
449+
},
450+
{
451+
"description": "Invalid - too long start datetime",
452+
"data": "1985-04-12T23:20:500/1985-06-25T10:30:00",
453+
"valid": false
454+
},
455+
{
456+
"description": "Invalid - too long end datetime",
457+
"data": "1985-04-12T23:20:50/1985-06-25T10:30:000",
458+
"valid": false
459+
},
460+
{
461+
"description": "Invalid - extra character at start",
462+
"data": "X1985-04-12T23:20:50/1985-06-25T10:30:00",
463+
"valid": false
464+
},
465+
{
466+
"description": "Invalid - extra character at end",
467+
"data": "1985-04-12T23:20:50/1985-06-25T10:30:00X",
468+
"valid": false
469+
},
470+
{
471+
"description": "Invalid - extra character in middle",
472+
"data": "1985-04-12T23:20:50X/1985-06-25T10:30:00",
473+
"valid": false
474+
},
475+
{
476+
"description": "Invalid - space in start date",
477+
"data": "1985-04- 12T23:20:50/1985-06-25T10:30:00",
478+
"valid": false
479+
},
480+
{
481+
"description": "Invalid - space in end date",
482+
"data": "1985-04-12T23:20:50/1985-06- 25T10:30:00",
483+
"valid": false
484+
},
485+
{
486+
"description": "Invalid - space in start time",
487+
"data": "1985-04-12T23: 20:50/1985-06-25T10:30:00",
488+
"valid": false
489+
},
490+
{
491+
"description": "Invalid - space in end time",
492+
"data": "1985-04-12T23:20:50/1985-06-25T10: 30:00",
493+
"valid": false
349494
}
350495
]
351496
}

test/iso/datetime/2019/interval/start-end-ordinal-basic.test.json

Lines changed: 135 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -276,6 +276,141 @@
276276
"description": "Invalid - week date format instead of ordinal in end",
277277
"data": "1985102T232050/1985W261T103000",
278278
"valid": false
279+
},
280+
{
281+
"description": "Invalid - start hour 99",
282+
"data": "1985102T992050/1985176T103000",
283+
"valid": false
284+
},
285+
{
286+
"description": "Invalid - end hour 99",
287+
"data": "1985102T232050/1985176T993000",
288+
"valid": false
289+
},
290+
{
291+
"description": "Invalid - start minute 99",
292+
"data": "1985102T239950/1985176T103000",
293+
"valid": false
294+
},
295+
{
296+
"description": "Invalid - end minute 99",
297+
"data": "1985102T232050/1985176T109900",
298+
"valid": false
299+
},
300+
{
301+
"description": "Invalid - start second 99",
302+
"data": "1985102T232099/1985176T103000",
303+
"valid": false
304+
},
305+
{
306+
"description": "Invalid - end second 99",
307+
"data": "1985102T232050/1985176T103099",
308+
"valid": false
309+
},
310+
{
311+
"description": "Invalid - letter in start year",
312+
"data": "I985102T232050/1985176T103000",
313+
"valid": false
314+
},
315+
{
316+
"description": "Invalid - letter in end year",
317+
"data": "1985102T232050/I985176T103000",
318+
"valid": false
319+
},
320+
{
321+
"description": "Invalid - letter in start day",
322+
"data": "1985I02T232050/1985176T103000",
323+
"valid": false
324+
},
325+
{
326+
"description": "Invalid - letter in end day",
327+
"data": "1985102T232050/1985I76T103000",
328+
"valid": false
329+
},
330+
{
331+
"description": "Invalid - letter in start hour",
332+
"data": "1985102TI32050/1985176T103000",
333+
"valid": false
334+
},
335+
{
336+
"description": "Invalid - letter in end hour",
337+
"data": "1985102T232050/1985176TI03000",
338+
"valid": false
339+
},
340+
{
341+
"description": "Invalid - letter in start minute",
342+
"data": "1985102T23I050/1985176T103000",
343+
"valid": false
344+
},
345+
{
346+
"description": "Invalid - letter in end minute",
347+
"data": "1985102T232050/1985176T10I000",
348+
"valid": false
349+
},
350+
{
351+
"description": "Invalid - letter in start second",
352+
"data": "1985102T2320I0/1985176T103000",
353+
"valid": false
354+
},
355+
{
356+
"description": "Invalid - letter in end second",
357+
"data": "1985102T232050/1985176T1030I0",
358+
"valid": false
359+
},
360+
{
361+
"description": "Invalid - too short start datetime",
362+
"data": "1985102T23205/1985176T103000",
363+
"valid": false
364+
},
365+
{
366+
"description": "Invalid - too short end datetime",
367+
"data": "1985102T232050/1985176T10300",
368+
"valid": false
369+
},
370+
{
371+
"description": "Invalid - too long start datetime",
372+
"data": "1985102T2320500/1985176T103000",
373+
"valid": false
374+
},
375+
{
376+
"description": "Invalid - too long end datetime",
377+
"data": "1985102T232050/1985176T1030000",
378+
"valid": false
379+
},
380+
{
381+
"description": "Invalid - extra character at start",
382+
"data": "X1985102T232050/1985176T103000",
383+
"valid": false
384+
},
385+
{
386+
"description": "Invalid - extra character at end",
387+
"data": "1985102T232050/1985176T103000X",
388+
"valid": false
389+
},
390+
{
391+
"description": "Invalid - extra character in middle",
392+
"data": "1985102T232050X/1985176T103000",
393+
"valid": false
394+
},
395+
{
396+
"description": "Invalid - space in start date",
397+
"data": "1985 102T232050/1985176T103000",
398+
"valid": false
399+
},
400+
{
401+
"description": "Invalid - space in end date",
402+
"data": "1985102T232050/1985 176T103000",
403+
"valid": false
404+
},
405+
{
406+
"description": "Invalid - space in start time",
407+
"data": "1985102T23 2050/1985176T103000",
408+
"valid": false
409+
},
410+
{
411+
"description": "Invalid - space in end time",
412+
"data": "1985102T232050/1985176T10 3000",
413+
"valid": false
279414
}
280415
]
281416
}

0 commit comments

Comments
 (0)