From b5a4e878dce82a59bdef46d7b94f5599961d0613 Mon Sep 17 00:00:00 2001 From: Niek Haarman Date: Sun, 24 Jan 2016 16:37:20 +0100 Subject: [PATCH] Support enums --- .../main/kotlin/com/nhaarman/mockito_kotlin/Any.kt | 4 ++++ mockito-kotlin/src/test/kotlin/AnyTest.kt | 12 +++++++++++- 2 files changed, 15 insertions(+), 1 deletion(-) diff --git a/mockito-kotlin/src/main/kotlin/com/nhaarman/mockito_kotlin/Any.kt b/mockito-kotlin/src/main/kotlin/com/nhaarman/mockito_kotlin/Any.kt index f6828f461d..b310747e1e 100644 --- a/mockito-kotlin/src/main/kotlin/com/nhaarman/mockito_kotlin/Any.kt +++ b/mockito-kotlin/src/main/kotlin/com/nhaarman/mockito_kotlin/Any.kt @@ -74,6 +74,10 @@ private fun createInstance(jClass: Class): T { return defaultPrimitive(jClass) } + if (jClass.isEnum) { + return jClass.enumConstants.first() + } + if (jClass.isArray) { return jClass.toArrayInstance() } diff --git a/mockito-kotlin/src/test/kotlin/AnyTest.kt b/mockito-kotlin/src/test/kotlin/AnyTest.kt index 0994f73360..83585de9da 100644 --- a/mockito-kotlin/src/test/kotlin/AnyTest.kt +++ b/mockito-kotlin/src/test/kotlin/AnyTest.kt @@ -27,7 +27,6 @@ import com.nhaarman.expect.expect import com.nhaarman.mockito_kotlin.any import com.nhaarman.mockito_kotlin.anyArray import com.nhaarman.mockito_kotlin.mock -import com.nhaarman.mockito_kotlin.verify import org.junit.After import org.junit.Before import org.junit.Test @@ -377,6 +376,15 @@ class AnyTest { expect(result).toNotBeNull() } + @Test + fun anyEnum() { + /* When */ + val result = any() + + /* Then */ + expect(result).toBe(MyEnum.VALUE) + } + open class Fake { open fun go(arg: Any?) { } @@ -404,4 +412,6 @@ class AnyTest { class ParameterizedClass(val t: T) class NullableParameterClass(val s: String?) + + enum class MyEnum { VALUE, ANOTHER_VALUE } }