kosi-libs / MocKMP

A mocking processor for Kotlin Multiplatform
https://kosi-libs.org/mockmp
MIT License
183 stars 12 forks source link

= MocKMP :icons: font :version: 1.17.0

A Kotlin/Multiplatform Kotlin Symbol Processor that generates Mocks & Fakes.

Built in collaboration with https://www.deezer.com/[Deezer].

== Installation

[source,kotlin,subs="verbatim,attributes"]

plugins { kotlin("multiplatform") id("org.kodein.mock.mockmp") version "{version}" }

kotlin { // Your Koltin/Multiplatform configuration }

mockmp { usesHelper = true installWorkaround() }

== Example

[source,kotlin]

class MyTest : TestsWithMocks() { override fun setUpMocks() = injectMocks(mocker) //<1>

@Mock lateinit var view: View
@Fake lateinit var model: Model

val controller by withMocks { Controller(view = view, firstModel = model) }

@Test fun controllerTest() {
    every { view.render(isAny()) } returns true
    controller.start()
    verify { view.render(model) }
}

}

== Read more

See https://kosi-libs.org/mockmp/[MocKMP Documentation].