Andreas Unterweger
11/13/2019, 10:33 AMval ibMock = mockkClass(InstalledBase::class)
every { ibMock.getModelDescriptions() } returns emptyList<ModelDescription>()
but it doesnt work. getModelDescriptions() still returns another list. i have no access to the object instaledbase in my test, but i want that getModelDescriptions() always returns an empty listStephan Schroeder
11/13/2019, 11:06 AMval ibMock = mockkClass(InstalledBase::class)
every { ibMock.getModelDescriptions() } returns emptyList<ModelDescription>()
effects
ibMock.getModelDescription()
but not
installedbase.getModelDescription()
Andreas Unterweger
11/13/2019, 11:07 AMStephan Schroeder
11/13/2019, 11:07 AMAndreas Unterweger
11/13/2019, 11:07 AMStephan Schroeder
11/13/2019, 11:07 AMAndreas Unterweger
11/13/2019, 11:08 AMStephan Schroeder
11/13/2019, 11:09 AMinstalledbase
is a normal (non-mocked) object. You probably need to be able to replace installedbase
with a mocked object (within the context of the unit-test).Andreas Unterweger
11/13/2019, 11:24 AMStephan Schroeder
11/13/2019, 12:03 PMMike
11/13/2019, 1:04 PMAndreas Unterweger
11/14/2019, 10:14 AMinternal class ObjTest : FreeSpec({
"obj" {
mockkConstructor(Obj::class)
every { anyConstructed<Obj>().i } returns 4
ObjProvider.obj().i shouldBe 4
}
})
data class Obj(val i : Int = 1)
object ObjProvider {
fun obj() = Obj()
}