我们在Sping Boot 3应用程序(Kotlin)的JPA存储库中有以下方法:
@Query(
"""SELECT *
FROM task as t
WHERE
t.end_date IS NULL
OR t.end_date >= CAST(NOW() AS DATE)
""", nativeQuery = true
)
fun findAllCurrentAndFuture(): List<Task>
字符串
但是对NOW()
的引用使得测试变得困难,例如,我读到我们可以定义一个时钟bean,但是不知道这种方法是否可以在这里使用。
我们在这里能做些什么来实现我们可以在固定的时刻进行测试?
目前,我们正在使用@DataJpaTest
来测试该存储库中的其他方法,因此我们希望有一个与该方法兼容的解决方案。
1条答案
按热度按时间np8igboo1#
我认为查询应该使用动态参数:
字符串
在测试用例中,您将使用下一个参数调用存储库方法
型
像这样的东西就足够了。