Migrate Kotlin Mockito tests to Mockk

Closes gh-22345
This commit is contained in:
Sebastien Deleuze
2019-02-05 15:42:12 +01:00
parent 00855c4f5f
commit 0b9522c84e
13 changed files with 140 additions and 221 deletions

View File

@@ -1,5 +1,5 @@
/*
* Copyright 2002-2018 the original author or authors.
* Copyright 2002-2019 the original author or authors.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -16,46 +16,35 @@
package org.springframework.core.env
import com.nhaarman.mockito_kotlin.any
import com.nhaarman.mockito_kotlin.whenever
import io.mockk.mockk
import io.mockk.verify
import org.junit.Test
import org.junit.runner.RunWith
import org.mockito.Answers
import org.mockito.ArgumentMatchers.eq
import org.mockito.Mock
import org.mockito.Mockito
import org.mockito.junit.MockitoJUnitRunner
/**
* Mock object based tests for PropertyResolver Kotlin extensions.
*
* @author Sebastien Deleuze
*/
@RunWith(MockitoJUnitRunner::class)
@Suppress("UNUSED_VARIABLE")
class PropertyResolverExtensionsTests {
@Mock(answer = Answers.RETURNS_MOCKS)
lateinit var propertyResolver: PropertyResolver
val propertyResolver = mockk<PropertyResolver>(relaxed = true)
@Test
fun `get operator`() {
val name = propertyResolver["name"] ?: "foo"
Mockito.verify(propertyResolver, Mockito.times(1)).getProperty("name")
propertyResolver["name"]
verify { propertyResolver.getProperty("name") }
}
@Test
fun `getProperty extension`() {
whenever(propertyResolver.getProperty(any(), eq(String::class.java))).thenReturn("foo")
val name = propertyResolver.getProperty<String>("name") ?: "foo"
Mockito.verify(propertyResolver, Mockito.times(1)).getProperty("name", String::class.java)
propertyResolver.getProperty<String>("name")
verify { propertyResolver.getProperty("name", String::class.java) }
}
@Test
fun `getRequiredProperty extension`() {
whenever(propertyResolver.getRequiredProperty(any(), eq(String::class.java))).thenReturn("foo")
val name = propertyResolver.getRequiredProperty<String>("name")
Mockito.verify(propertyResolver, Mockito.times(1)).getRequiredProperty("name", String::class.java)
propertyResolver.getRequiredProperty<String>("name")
verify { propertyResolver.getRequiredProperty("name", String::class.java) }
}
}