@@ -24,7 +24,11 @@ func TestAutoParse(t *testing.T) {
24
24
{"1969.12.31" , 1969 , time .December , 31 },
25
25
{"1969-12-31" , 1969 , time .December , 31 },
26
26
{"2000-02-28" , 2000 , time .February , 28 },
27
+ {"20000228" , 2000 , time .February , 28 },
28
+ {"2018-02-03T00:00:00Z" , 2018 , time .February , 3 }, // datetime is allowed
29
+ {"20180203T000000Z" , 2018 , time .February , 3 }, // datetime is allowed
27
30
{"+2000-02-29" , 2000 , time .February , 29 },
31
+ {"+20000229" , 2000 , time .February , 29 },
28
32
{"+02000-03-01" , 2000 , time .March , 1 },
29
33
{"+002004-02-28" , 2004 , time .February , 28 },
30
34
{"2004-02-29" , 2004 , time .February , 29 },
@@ -54,7 +58,9 @@ func TestAutoParse(t *testing.T) {
54
58
t .Errorf ("ParseISO(%v) == %v, want (%v, %v, %v)" , c .value , d , c .year , c .month , c .day )
55
59
}
56
60
}
61
+ }
57
62
63
+ func TestAutoParse_errors (t * testing.T ) {
58
64
badCases := []string {
59
65
"1234-05" ,
60
66
"1234-5-6" ,
@@ -91,10 +97,15 @@ func TestParseISO(t *testing.T) {
91
97
day int
92
98
}{
93
99
{"1969-12-31" , 1969 , time .December , 31 },
100
+ {"19691231" , 1969 , time .December , 31 },
101
+ {"2018-02-03T00:00:00Z" , 2018 , time .February , 3 }, // datetime is allowed
102
+ {"20180203T000000Z" , 2018 , time .February , 3 }, // datetime is allowed
94
103
{"+1970-01-01" , 1970 , time .January , 1 },
95
104
{"+01970-01-02" , 1970 , time .January , 2 },
96
105
{"2000-02-28" , 2000 , time .February , 28 },
106
+ {"20000228" , 2000 , time .February , 28 },
97
107
{"+2000-02-29" , 2000 , time .February , 29 },
108
+ {"+20000229" , 2000 , time .February , 29 },
98
109
{"+02000-03-01" , 2000 , time .March , 1 },
99
110
{"+002004-02-28" , 2004 , time .February , 28 },
100
111
{"2004-02-29" , 2004 , time .February , 29 },
@@ -125,7 +136,9 @@ func TestParseISO(t *testing.T) {
125
136
t .Errorf ("ParseISO(%v) == %v, want (%v, %v, %v)" , c .value , d , c .year , c .month , c .day )
126
137
}
127
138
}
139
+ }
128
140
141
+ func TestParseISO_errors (t * testing.T ) {
129
142
badCases := []string {
130
143
"1234-05" ,
131
144
"1234-5-6" ,
@@ -143,6 +156,8 @@ func TestParseISO(t *testing.T) {
143
156
"+10-11-12" ,
144
157
"+100-02-03" ,
145
158
"-123-05-06" ,
159
+ "2018-02-03T0:0:0Z" ,
160
+ "2018-02-03T0Z" ,
146
161
}
147
162
for _ , c := range badCases {
148
163
d , err := ParseISO (c )
@@ -205,7 +220,9 @@ func TestParse(t *testing.T) {
205
220
t .Errorf ("Parse(%v) == %v, want (%v, %v, %v)" , c .value , d , c .year , c .month , c .day )
206
221
}
207
222
}
223
+ }
208
224
225
+ func TestParse_errors (t * testing.T ) {
209
226
// Test inability to parse ISO 8601 expanded year format
210
227
badCases := []string {
211
228
"+1234-05-06" ,
0 commit comments