blob: 1f838a83214d80984119f6148e9068314af01c1a (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
|
from __future__ import annotations
import pytest
from pendulum.parsing.iso8601 import parse_iso8601
@pytest.mark.benchmark(group="Parsing")
def test_parse_iso8601() -> None:
# Date
parse_iso8601("2016")
parse_iso8601("2016-10")
parse_iso8601("2016-10-06")
parse_iso8601("20161006")
# Time
parse_iso8601("201610")
# Datetime
parse_iso8601("2016-10-06T12:34:56.123456")
parse_iso8601("2016-10-06T12:34:56.123")
parse_iso8601("2016-10-06T12:34:56.000123")
parse_iso8601("2016-10-06T12")
parse_iso8601("2016-10-06T123456")
parse_iso8601("2016-10-06T123456.123456")
parse_iso8601("20161006T123456.123456")
parse_iso8601("20161006 123456.123456")
# Datetime with offset
parse_iso8601("2016-10-06T12:34:56.123456+05:30")
parse_iso8601("2016-10-06T12:34:56.123456+0530")
parse_iso8601("2016-10-06T12:34:56.123456-05:30")
parse_iso8601("2016-10-06T12:34:56.123456-0530")
parse_iso8601("2016-10-06T12:34:56.123456+05")
parse_iso8601("2016-10-06T12:34:56.123456-05")
parse_iso8601("20161006T123456,123456-05")
parse_iso8601("2016-10-06T12:34:56.123456789+05:30")
# Ordinal date
parse_iso8601("2012-007")
parse_iso8601("2012007")
parse_iso8601("2017-079")
# Week date
parse_iso8601("2012-W05")
parse_iso8601("2008-W39-6")
parse_iso8601("2009-W53-7")
parse_iso8601("2009-W01-1")
# Week date wth time
parse_iso8601("2008-W39-6T09")
|