github.com/keysonZZZ/kmg@v0.0.0-20151121023212-05317bfd7d39/kmgTime/Period_test.go (about) 1 package kmgTime 2 3 import ( 4 "testing" 5 // "time" 6 // 7 // "github.com/bronze1man/kmg/kmgTest" 8 "time" 9 "github.com/bronze1man/kmg/kmgTest" 10 ) 11 12 func TestGetPeriodFromSortedList(ot *testing.T) { 13 SortedList := []Period{ 14 { 15 Start: MustFromMysqlFormat("2001-01-01 00:00:00"), 16 End: MustFromMysqlFormat("2001-01-01 01:00:00"), 17 }, 18 { 19 Start: MustFromMysqlFormat("2001-01-01 02:00:00"), 20 End: MustFromMysqlFormat("2001-01-01 03:00:00"), 21 }, 22 { 23 Start: MustFromMysqlFormat("2001-01-01 03:00:00"), 24 End: MustFromMysqlFormat("2001-01-01 04:00:00"), 25 }, 26 } 27 for _, testcase := range []struct { 28 t time.Time 29 i int 30 ok bool 31 }{ 32 {MustFromMysqlFormat("2001-01-00 23:30:00"), 0, false}, 33 {MustFromMysqlFormat("2001-01-01 00:30:00"), 0, true}, 34 {MustFromMysqlFormat("2001-01-01 03:00:00"), 2, true}, 35 {MustFromMysqlFormat("2001-01-01 04:30:00"), 0, false}, 36 } { 37 i, ok := GetPeriodFromSortedList(testcase.t, SortedList) 38 kmgTest.Equal(i, testcase.i) 39 kmgTest.Equal(ok, testcase.ok) 40 } 41 }