date_test.go 1.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263
  1. package common
  2. import (
  3. "github.com/gogf/gf/os/gtime"
  4. "reflect"
  5. "testing"
  6. )
  7. func TestGetCNEndOfWeek(t *testing.T) {
  8. type args struct {
  9. time *gtime.Time
  10. }
  11. tests := []struct {
  12. name string
  13. args args
  14. want *gtime.Time
  15. }{
  16. {"日期测试", args{time: gtime.Now()}, gtime.NewFromStr("2020-09-19 23:59:59")},
  17. {"时间测试", args{time: gtime.Now()}, gtime.NewFromStr("2020-09-19 23:59:59")},
  18. }
  19. for _, tt := range tests {
  20. t.Run(tt.name, func(t *testing.T) {
  21. got := GetCNEndOfWeek(tt.args.time)
  22. if !reflect.DeepEqual(got.Day(), tt.want.Day()) {
  23. t.Errorf("GetCNEndOfWeek() = %v, want %v", got, tt.want)
  24. }
  25. if !reflect.DeepEqual(got.Hour(), tt.want.Hour()) {
  26. t.Errorf("GetCNEndOfWeek() = %v, want %v", got, tt.want)
  27. }
  28. })
  29. }
  30. }
  31. func TestGetNextTimeNode(t *testing.T) {
  32. type args struct {
  33. signOutTime *gtime.Time
  34. }
  35. t1 := gtime.NewFromStr("2021-09-16 11:44:56")
  36. w1 := gtime.NewFromStr("2021-09-16 12:00:00")
  37. t2 := gtime.NewFromStr("2021-09-16 00:00:00")
  38. w2 := gtime.NewFromStr("2021-09-16 00:00:00")
  39. t3 := gtime.NewFromStr("2021-09-16 23:42:00")
  40. w3 := gtime.NewFromStr("2021-09-17 00:00:00")
  41. tests := []struct {
  42. name string
  43. args args
  44. want *gtime.Time
  45. }{
  46. {"普通时间测试", args{t1}, w1},
  47. {"零点时间测试", args{t2}, w2},
  48. {"24点时间测试", args{t3}, w3},
  49. }
  50. for _, tt := range tests {
  51. t.Run(tt.name, func(t *testing.T) {
  52. if got := GetNextTimeNode(tt.args.signOutTime); !reflect.DeepEqual(got, tt.want) {
  53. t.Errorf("GetNextTimeNode() = %v, want %v", got, tt.want)
  54. }
  55. })
  56. }
  57. }