time_test.go (1042B)
1 package main 2 3 import ( 4 "testing" 5 "time" 6 ) 7 8 func TestParseArg(t *testing.T) { 9 layout := "15:4:5 2/1/2006" 10 context, _ := time.Parse(layout, "1:1:1 1/1/2001") 11 var check = func(raw string, expected string) { 12 t.Helper() 13 t.Run("", func(b *testing.T) { 14 b.Helper() 15 tmeTime := NewTime(context) 16 expected, _ := time.Parse(layout, expected) 17 parsed, err := tmeTime.ParseArg(raw) 18 if err != nil { 19 b.Fatal(err) 20 } 21 22 if !parsed.Equal(expected) { 23 b.Errorf("Parsed %v; Expected %v", parsed, expected) 24 } 25 }) 26 } 27 28 check("5", "5:0:0 1/1/2001") 29 check("5:5", "5:5:0 1/1/2001") 30 check("5:5:5", "5:5:5 1/1/2001") 31 check("5:5 5", "5:5:0 5/1/2001") 32 check("5:5 5/5", "5:5:0 5/5/2001") 33 check("5:5 5/5/2005", "5:5:0 5/5/2005") 34 35 check("5/5", "0:0:0 5/5/2001") 36 check("5/5/2005", "0:0:0 5/5/2005") 37 check("5/2005", "0:0:0 1/5/2005") 38 39 check("5:05", "5:5:0 1/1/2001") 40 check("05:05", "5:5:0 1/1/2001") 41 check("05:5 05/5/2005", "5:5:0 5/5/2005") 42 check("5:5 5/05/2005", "5:5:0 5/5/2005") 43 check("5:05 5/05/2005", "5:5:0 5/5/2005") 44 }