@@ -240,6 +240,7 @@ func TestAppendDateTime(t *testing.T) {
240240 t time.Time
241241 str string
242242 timeTruncate time.Duration
243+ expectedErr bool
243244 }{
244245 {
245246 t : time .Date (1234 , 5 , 6 , 0 , 0 , 0 , 0 , time .UTC ),
@@ -323,34 +324,29 @@ func TestAppendDateTime(t *testing.T) {
323324 str : "0001-01-01" ,
324325 timeTruncate : 365 * 24 * time .Hour ,
325326 },
327+ // year out of range
328+ {
329+ t : time .Date (0 , 1 , 1 , 0 , 0 , 0 , 0 , time .UTC ),
330+ expectedErr : true ,
331+ },
332+ {
333+ t : time .Date (10000 , 1 , 1 , 0 , 0 , 0 , 0 , time .UTC ),
334+ expectedErr : true ,
335+ },
326336 }
327337 for _ , v := range tests {
328338 buf := make ([]byte , 0 , 32 )
329- buf , _ = appendDateTime (buf , v .t , v .timeTruncate )
339+ buf , err := appendDateTime (buf , v .t , v .timeTruncate )
340+ if err != nil {
341+ if ! v .expectedErr {
342+ t .Errorf ("appendDateTime(%v) returned an errror: %v" , v .t , err )
343+ }
344+ continue
345+ }
330346 if str := string (buf ); str != v .str {
331347 t .Errorf ("appendDateTime(%v), have: %s, want: %s" , v .t , str , v .str )
332348 }
333349 }
334-
335- // year out of range
336- {
337- v := time .Date (0 , 1 , 1 , 0 , 0 , 0 , 0 , time .UTC )
338- buf := make ([]byte , 0 , 32 )
339- _ , err := appendDateTime (buf , v , 0 )
340- if err == nil {
341- t .Error ("want an error" )
342- return
343- }
344- }
345- {
346- v := time .Date (10000 , 1 , 1 , 0 , 0 , 0 , 0 , time .UTC )
347- buf := make ([]byte , 0 , 32 )
348- _ , err := appendDateTime (buf , v , 0 )
349- if err == nil {
350- t .Error ("want an error" )
351- return
352- }
353- }
354350}
355351
356352func TestParseDateTime (t * testing.T ) {
0 commit comments