Actually test against multiple Kotlin versions
1 file changed
tree: 792846fd5e403b99b2cee39c55acae2519351b64
  1. .github/
  2. .idea/
  3. gradle/
  4. mockito-kotlin/
  5. ops/
  6. tests/
  7. .gitignore
  8. .travis.yml
  9. build.gradle
  10. gradle.properties
  11. gradlew
  12. gradlew.bat
  13. LICENSE
  14. publishing.gradle
  15. README.md
  16. RELEASING.md
  17. settings.gradle
README.md

Mockito-Kotlin

Download

A small library that provides helper functions to work with Mockito in Kotlin.

Install

Mockito-Kotlin is available on Maven Central and JCenter. For Gradle users, add the following to your build.gradle, replacing x.x.x with the latest version:

testImplementation "com.nhaarman.mockitokotlin2:mockito-kotlin:x.x.x"

Example

A test using Mockito-Kotlin typically looks like the following:

@Test
fun doAction_doesSomething(){ 
  /* Given */
  val mock = mock<MyClass> {
    on { getText() } doReturn "text"
  }
  val classUnderTest = ClassUnderTest(mock)
  
  /* When */
  classUnderTest.doAction()
  
  /* Then */
  verify(mock).doSomething(any())
}

For more info and samples, see the Wiki.

Building

Mockito-Kotlin is built with Gradle.

  • ./gradlew build builds the project
  • ./gradlew publishToMavenLocal installs the maven artifacts in your local repository
  • ./gradlew assemble && ./gradlew test runs the test suite (See Testing below)

Versioning

Mockito-Kotlin roughly follows SEMVER; version names are parsed from git tags using git describe.

Testing

Mockito-Kotlin's test suite is located in a separate tests module, to allow running the tests using several Kotlin versions whilst still keeping the base module at a recent version.

Testing thus must be done in two stages: one to build the base artifact to test against, and the actual execution of the tests against the built artifact:

  • ./gradlew assemble builds the base artifact
  • ./gradlew test runs the tests against the built artifact.

Usually it is enough to test only using the default Kotlin versions; CI will test against multiple versions. If you want to test using a different Kotlin version locally, set an environment variable KOTLIN_VERSION and run the tests.