@@ -41,12 +41,16 @@ fun after(millis: Long) = Mockito.after(millis)
41
41
42
42
/* * Matches any object, excluding nulls. */
43
43
inline fun <reified T : Any > any () = Mockito .any(T ::class .java) ? : createInstance<T >()
44
+
44
45
/* * Matches anything, including nulls. */
45
46
inline fun <reified T : Any > anyOrNull (): T = Mockito .any<T >() ? : createInstance<T >()
47
+
46
48
/* * Matches any vararg object, including nulls. */
47
49
inline fun <reified T : Any > anyVararg (): T = Mockito .any<T >() ? : createInstance<T >()
50
+
48
51
/* * Matches any array of type T. */
49
52
inline fun <reified T : Any ? > anyArray (): Array <T > = Mockito .any(Array <T >::class .java) ? : arrayOf()
53
+
50
54
inline fun <reified T : Any > argThat (noinline predicate : T .() -> Boolean ) = Mockito .argThat<T > { it -> (it as T ).predicate() } ? : createInstance(T ::class )
51
55
inline fun <reified T : Any > argForWhich (noinline predicate : T .() -> Boolean ) = argThat(predicate)
52
56
@@ -80,8 +84,11 @@ inline fun <reified T : Any> mock(defaultAnswer: Answer<Any>): T = Mockito.mock(
80
84
inline fun <reified T : Any > mock (s : MockSettings ): T = Mockito .mock(T ::class .java, s)!!
81
85
inline fun <reified T : Any > mock (s : String ): T = Mockito .mock(T ::class .java, s)!!
82
86
83
- inline fun <reified T : Any > mock (stubbing : KStubbing <T >.() -> Unit ): T
84
- = Mockito .mock(T ::class .java)!! .apply { stubbing(KStubbing (this )) }
87
+ inline fun <reified T : Any > mock (stubbing : KStubbing <T >.(T ) -> Unit ): T {
88
+ return mock<T >().apply {
89
+ KStubbing (this ).stubbing(this )
90
+ }
91
+ }
85
92
86
93
class KStubbing <out T >(private val mock : T ) {
87
94
fun <R > on (methodCall : R ) = Mockito .`when `(methodCall)
0 commit comments