我有包含的DateUtil.kt文件。
fun getFirstDayOfTheWeek(): String {
val firstDay: LocalDate = LocalDate.now(ZoneId.of(DateConstants.IST_ZONE_ID))
.with(TemporalAdjusters.previousOrSame(DayOfWeek.MONDAY))
return firstDay.toString()
}
我该如何测试?没有类,只有函数。使用Spring Boot,@ExtendWith(SpringExtension.class)
可以在课程级别使用。
我还是应该为其创建DateUtilTest类,还是有一种无需创建类即可进行测试的方法?
@ExtendWith(SpringExtension::class)
class DateUtilsTest {
@Test
fun getFirstDayOfTheWeekTest() {
}
}
另外,有人可以帮助您测试此功能吗?我应该模拟LocalDate库吗?
您无需SpringExtension
测试简单的非Spring代码。您只需要在课程中进行简单测试即可。
设计此类功能时要考虑的几件事。LocalDate.now()
使功能不纯净。相反,此Date应该作为函数的参数来使用,因此更易于测试。使用Kotlin,您可以使用默认值进行初始化,因此函数调用者的签名不会更改。
fun getFirstDayOfTheWeek(date: LocalDate = LocalDate.now()): String {
val firstDay: LocalDate = date.with(TemporalAdjusters.previousOrSame(DayOfWeek.MONDAY))
return firstDay.toString()
}
class DateUtilKt {
@Test
fun testFirstDayOfTheWeek() {
val day = getFirstDayOfTheWeek(LocalDate.of(2020, 5,22))
assertEquals("2020-05-18", day)
}
}
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句