MCPcopy
hub / github.com/django/django / test_parse_datetime

Method test_parse_datetime

tests/utils_tests/test_dateparse.py:44–93  ·  view source on GitHub ↗
(self)

Source from the content-addressed store, hash-verified

42 parse_time("09:15:90")
43
44 def test_parse_datetime(self):
45 valid_inputs = (
46 ("2012-04-23", datetime(2012, 4, 23)),
47 ("2012-04-23T09:15:00", datetime(2012, 4, 23, 9, 15)),
48 ("2012-4-9 4:8:16", datetime(2012, 4, 9, 4, 8, 16)),
49 (
50 "2012-04-23T09:15:00Z",
51 datetime(2012, 4, 23, 9, 15, 0, 0, get_fixed_timezone(0)),
52 ),
53 (
54 "2012-4-9 4:8:16-0320",
55 datetime(2012, 4, 9, 4, 8, 16, 0, get_fixed_timezone(-200)),
56 ),
57 (
58 "2012-04-23T10:20:30.400+02:30",
59 datetime(2012, 4, 23, 10, 20, 30, 400000, get_fixed_timezone(150)),
60 ),
61 (
62 "2012-04-23T10:20:30.400+02",
63 datetime(2012, 4, 23, 10, 20, 30, 400000, get_fixed_timezone(120)),
64 ),
65 (
66 "2012-04-23T10:20:30.400-02",
67 datetime(2012, 4, 23, 10, 20, 30, 400000, get_fixed_timezone(-120)),
68 ),
69 (
70 "2012-04-23T10:20:30,400-02",
71 datetime(2012, 4, 23, 10, 20, 30, 400000, get_fixed_timezone(-120)),
72 ),
73 (
74 "2012-04-23T10:20:30.400 +0230",
75 datetime(2012, 4, 23, 10, 20, 30, 400000, get_fixed_timezone(150)),
76 ),
77 (
78 "2012-04-23T10:20:30,400 +00",
79 datetime(2012, 4, 23, 10, 20, 30, 400000, get_fixed_timezone(0)),
80 ),
81 (
82 "2012-04-23T10:20:30 -02",
83 datetime(2012, 4, 23, 10, 20, 30, 0, get_fixed_timezone(-120)),
84 ),
85 )
86 for source, expected in valid_inputs:
87 with self.subTest(source=source):
88 self.assertEqual(parse_datetime(source), expected)
89
90 # Invalid inputs
91 self.assertIsNone(parse_datetime("20120423091500"))
92 with self.assertRaises(ValueError):
93 parse_datetime("2012-04-56T09:15:90")
94
95
96class DurationParseTests(unittest.TestCase):

Callers

nothing calls this directly

Calls 2

get_fixed_timezoneFunction · 0.90
parse_datetimeFunction · 0.90

Tested by

no test coverage detected