我已经看过jdbi v3的代码库,但是仍然找不到一种方法来模拟Dao类返回的Stream<JoinRow>
。
构造函数受程序包保护,只能从JoinRowMapper
的本身需要StatementContext
的specialize函数中调用。
有什么方法可以模拟JoinRow
对象用于单元测试?
谢谢。
答案 0 :(得分:0)
不清楚,为什么需要模拟Stream<JoinRow>
。但是,如果您不能嘲笑它,则可以监视它:)只需根据您的上下文使用Mockito Spy或Spring @SpyBean。
但是,Jdbi对testing有很好的支持,而没有模拟任何东西-仅使用嵌入式DB(例如H2)和JdbiRule。
此外,在他们的Git仓库中有Jdbi tests的很好的例子。专为Stream。
希望这个答案可以澄清一些事情。