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  }