diff --git a/cast_test.go b/cast_test.go index d9a1479..f09c5d4 100644 --- a/cast_test.go +++ b/cast_test.go @@ -1210,6 +1210,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}, diff --git a/caste.go b/caste.go index 70c7291..c73b82c 100644 --- a/caste.go +++ b/caste.go @@ -39,6 +39,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) }