diff --git a/mockito-kotlin/build.gradle b/mockito-kotlin/build.gradle index 60abc787..7554969f 100644 --- a/mockito-kotlin/build.gradle +++ b/mockito-kotlin/build.gradle @@ -26,7 +26,7 @@ repositories { dependencies { compile "org.jetbrains.kotlin:kotlin-stdlib:$kotlin_version" compile "org.jetbrains.kotlin:kotlin-reflect:$kotlin_version" - compile "org.mockito:mockito-core:2.2.17" + compile "org.mockito:mockito-core:2.2.22" /* Tests */ testCompile "junit:junit:4.12" diff --git a/mockito-kotlin/src/main/kotlin/com/nhaarman/mockito_kotlin/Mockito.kt b/mockito-kotlin/src/main/kotlin/com/nhaarman/mockito_kotlin/Mockito.kt index 70ef4abc..9a67e3c2 100644 --- a/mockito-kotlin/src/main/kotlin/com/nhaarman/mockito_kotlin/Mockito.kt +++ b/mockito-kotlin/src/main/kotlin/com/nhaarman/mockito_kotlin/Mockito.kt @@ -78,7 +78,7 @@ fun ignoreStubs(vararg mocks: Any): Array = Mockito.ignoreStubs(*mocks) fun inOrder(vararg mocks: Any): InOrder = Mockito.inOrder(*mocks)!! fun inOrder(vararg mocks: Any, evaluation: InOrder.() -> Unit) = Mockito.inOrder(*mocks).evaluation() -inline fun isA(): T? = Mockito.isA(T::class.java) +inline fun isA(): T = Mockito.isA(T::class.java) ?: createInstance() fun isNotNull(): T? = Mockito.isNotNull() fun isNull(): T? = Mockito.isNull() diff --git a/mockito-kotlin/src/test/kotlin/test/MockitoTest.kt b/mockito-kotlin/src/test/kotlin/test/MockitoTest.kt index 5e2f6e27..1514a1ea 100644 --- a/mockito-kotlin/src/test/kotlin/test/MockitoTest.kt +++ b/mockito-kotlin/src/test/kotlin/test/MockitoTest.kt @@ -492,4 +492,19 @@ class MockitoTest : TestBase() { /* Then */ expect(mock.genericMethod()).toBe(2) } -} + + @Test + fun isA_withNonNullableString() { + mock().apply { + string("") + verify(this).string(isA()) + } + } + @Test + fun isA_withNullableString() { + mock().apply { + nullableString("") + verify(this).nullableString(isA()) + } + } +} \ No newline at end of file