我目前正在使用Kotlin ORM Exposed编写应用程序。我正在尝试测试一些基本功能,将查询结果转换为相应对象的实例。我有一些类似的东西:
suspend fun getAllFoo(): List<Foo> = newSuspendedTransaction {
FooTable.selectAll().map { rowToFoo(it) }
}
private fun rowToFoo(row: ResultRow): Foo {
return Foo(
id = row[Foo.id],
description = row[Foo.description]
)
}
(请耐心等待,因为我忽略了数据类的代码,因为我认为这没有什么关系)。我的问题是,我该如何模拟selectAll()
函数?我尝试过
val mockFoo = mock<Foo> {
on { selectAll() }.doReturn(???)
}
但是我不知道要在模拟返回中添加什么,因为查询结果似乎是某种神秘的内部类,有什么想法吗?