2017-05-12 16 views
0

我正在使用Scala WordSpec编写单元测试用例。在测试返回当前时间的方法时,我想返回一个固定的时间。如何设置ZonedDateTime对象在Scala中测试时返回一个固定的时间值?

我想模拟ZonedDateTime.now().getHour方法在我的代码中返回一个固定值用于测试。

我尝试下面的代码,但它不会给任何结果

val mockZone = mock[ZonedDateTime] 
    (mockZone.now("IN":"Asia/Kolkata").getHour) 
     .expects() 
     .returns(2) 

回答

1

你可以尝试以下,以获得time

new SimpleDateFormat("HH:mm:ss").format(java.util.Date.from(ZonedDateTime.now(ZoneId.of("Asia/Kolkata")).toInstant)) 

并按照获得date

new SimpleDateFormat("yyyy-MM-dd").format(java.util.Date.from(ZonedDateTime.now(ZoneId.of("Asia/Kolkata")).toInstant)) 

希望它有帮助

相关问题