Merge b056890205
into 8965335b8c
This commit is contained in:
commit
96bb840a67
@ -1131,6 +1131,7 @@ func TestToTimeEE(t *testing.T) {
|
||||
{uint(1482597504), time.Date(2016, 12, 24, 16, 38, 24, 0, time.UTC), false},
|
||||
{uint64(1234567890), time.Date(2009, 2, 13, 23, 31, 30, 0, time.UTC), false},
|
||||
{uint32(1234567890), time.Date(2009, 2, 13, 23, 31, 30, 0, time.UTC), false},
|
||||
{float64(1234567890), time.Date(2009, 2, 13, 23, 31, 30, 0, time.UTC), false},
|
||||
{time.Date(2009, 2, 13, 23, 31, 30, 0, time.UTC), time.Date(2009, 2, 13, 23, 31, 30, 0, time.UTC), false},
|
||||
// errors
|
||||
{"2006", time.Time{}, true},
|
||||
|
6
caste.go
6
caste.go
@ -16,6 +16,8 @@ import (
|
||||
"time"
|
||||
)
|
||||
|
||||
var TimeLocation = time.UTC
|
||||
|
||||
var errNegativeNotAllowed = errors.New("unable to cast negative value")
|
||||
|
||||
// ToTimeE casts an interface to a time.Time type.
|
||||
@ -39,6 +41,8 @@ func ToTimeE(i interface{}) (tim time.Time, err error) {
|
||||
return time.Unix(int64(v), 0), nil
|
||||
case uint32:
|
||||
return time.Unix(int64(v), 0), nil
|
||||
case float64:
|
||||
return time.Unix(int64(v), 0), nil
|
||||
default:
|
||||
return time.Time{}, fmt.Errorf("unable to cast %#v of type %T to Time", i, i)
|
||||
}
|
||||
@ -1151,7 +1155,7 @@ func StringToDate(s string) (time.Time, error) {
|
||||
|
||||
func parseDateWith(s string, dates []string) (d time.Time, e error) {
|
||||
for _, dateType := range dates {
|
||||
if d, e = time.Parse(dateType, s); e == nil {
|
||||
if d, e = time.ParseInLocation(dateType, s, TimeLocation); e == nil {
|
||||
return
|
||||
}
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user