github.com/artisanhe/tools@v1.0.1-0.20210607022958-19a8fef2eb04/timelib/working_day_test.go (about) 1 package timelib 2 3 import ( 4 "testing" 5 "time" 6 7 "github.com/stretchr/testify/assert" 8 ) 9 10 func TestGetTodayFirstSecInLocation(t *testing.T) { 11 tt := assert.New(t) 12 t0, _ := time.Parse(time.RFC3339, "2017-03-27T23:58:59+08:00") 13 mtl0 := GetTodayFirstSecInLocation(t0, CST) 14 tt.Equal("2017-03-27T00:00:00+08:00", mtl0.Format(time.RFC3339)) 15 tt.Equal(int64(1490544000), time.Time(mtl0).Unix()) 16 } 17 18 func TestGetTodayLastSecInLocation(t *testing.T) { 19 tt := assert.New(t) 20 t0, _ := time.Parse(time.RFC3339, "2017-03-27T23:58:59+08:00") 21 mtl0 := GetTodayLastSecInLocation(t0, CST) 22 tt.Equal("2017-03-27T23:59:59+08:00", mtl0.Format(time.RFC3339)) 23 tt.Equal(int64(1490630399), time.Time(mtl0).Unix()) 24 } 25 26 func TestAddWorkingDaysInLocation(t *testing.T) { 27 tt := assert.New(t) 28 t0, _ := time.Parse(time.RFC3339, "2017-03-27T23:58:59+08:00") 29 mtl0 := AddWorkingDaysInLocation(t0, 10, CST) 30 tt.Equal("2017-04-10T23:58:59+08:00", mtl0.Format(time.RFC3339)) 31 tt.Equal(int64(1491839939), time.Time(mtl0).Unix()) 32 } 33 34 func TestTime(t *testing.T) { 35 //tt := assert.New(t) 36 fomat := "20060102150405" 37 t0, _ := time.ParseInLocation(fomat, "20160312104325", CST) 38 datetime := MySQLDatetime(t0) 39 t.Logf("====%s\n", datetime.String()) 40 } 41 42 func TestTime2(t *testing.T) { 43 //tt := assert.New(t) 44 fomat := "20060102150405" 45 datetime, _ := ParseMySQLDatetimeFromStringWithFormatterInCST("20160312104325", fomat) 46 t.Logf("====%s\n", datetime.String()) 47 } 48 49 func TestDateDiff(t *testing.T) { 50 startTime1, _ := time.Parse(time.RFC3339, "2018-03-31T12:00:00+08:00") 51 startTime2, _ := time.Parse(time.RFC3339, "2018-04-01T12:00:00+08:00") 52 startTime3, _ := time.Parse(time.RFC3339, "2018-04-30T12:00:00+08:00") 53 endTime1 := time.Now() 54 t.Logf("%s - %s = %d\n", endTime1, startTime1, CountDateDiff(startTime1, endTime1, CST)) 55 t.Logf("%s - %s = %d\n", endTime1, startTime2, CountDateDiff(startTime2, endTime1, CST)) 56 t.Logf("%s - %s = %d\n", endTime1, startTime3, CountDateDiff(startTime3, endTime1, CST)) 57 t.Logf("%s - %s = %d\n", endTime1, endTime1, CountDateDiff(endTime1, endTime1, CST)) 58 }