一小时后如何编写函数返回时间的单元测试

时间:2018-12-06 15:34:07

标签: unit-testing go

我具有以下功能,该功能可以将当前时间增加给定的小时数,并在

中返回新时间
func getExpiryTime(hour int) *string {
   const layout = "2006-01-02T15:04:05Z"
   expiryTime := time.Now().Local().Add(time.Hour *time.Duration(hour))
   return aws.String(expiryTime.Format(layout))
}

为此功能编写单元测试的最佳方法是什么?

1 个答案:

答案 0 :(得分:5)

您可以尝试模拟时间提供者,并设置模拟中的time.Now()函数以返回您控制的预设值。在生产中,您可以将其转发到实际时间的呼叫。