@@ -39,51 +39,76 @@ inline fun <reified T : Any> argumentCaptor(): KArgumentCaptor<T> {
39
39
/* *
40
40
* Creates 2 [KArgumentCaptor]s for given types.
41
41
*/
42
- inline fun <reified A : Any , reified B : Any > argumentCaptor2 (): Pair <KArgumentCaptor <A >, KArgumentCaptor<B>> {
43
- return Pair (KArgumentCaptor (ArgumentCaptor .forClass(A ::class .java), A ::class ),
44
- KArgumentCaptor (ArgumentCaptor .forClass(B ::class .java), B ::class ))
42
+ inline fun <reified A : Any , reified B : Any > argumentCaptor (
43
+ a : KClass <A > = A : :class,
44
+ b : KClass <B > = B : :class
45
+ ): Pair <KArgumentCaptor <A >, KArgumentCaptor<B>> {
46
+ return Pair (
47
+ KArgumentCaptor (ArgumentCaptor .forClass(a.java), a),
48
+ KArgumentCaptor (ArgumentCaptor .forClass(b.java), b)
49
+ )
45
50
}
46
51
47
52
/* *
48
53
* Creates 3 [KArgumentCaptor]s for given types.
49
54
*/
50
- inline fun <reified A : Any , reified B : Any , reified C : Any > argumentCaptor3 (): Triple <KArgumentCaptor <A >, KArgumentCaptor<B>, KArgumentCaptor<C>> {
55
+ inline fun <reified A : Any , reified B : Any , reified C : Any > argumentCaptor (
56
+ a : KClass <A > = A : :class,
57
+ b : KClass <B > = B : :class,
58
+ c : KClass <C > = C : :class
59
+ ): Triple <KArgumentCaptor <A >, KArgumentCaptor<B>, KArgumentCaptor<C>> {
51
60
return Triple (
52
- KArgumentCaptor (ArgumentCaptor .forClass(A ::class .java), A ::class ),
53
- KArgumentCaptor (ArgumentCaptor .forClass(B ::class .java), B ::class ),
54
- KArgumentCaptor (ArgumentCaptor .forClass(C ::class .java), C ::class ))
61
+ KArgumentCaptor (ArgumentCaptor .forClass(a.java), a),
62
+ KArgumentCaptor (ArgumentCaptor .forClass(b.java), b),
63
+ KArgumentCaptor (ArgumentCaptor .forClass(c.java), c)
64
+ )
55
65
}
56
66
57
67
data class ArgumentCaptorHolder4 <out A , out B , out C , out D >(
58
- val first : A , val second : B , val third : C , val fourth : D )
68
+ val first : A , val second : B , val third : C , val fourth : D
69
+ )
70
+
59
71
data class ArgumentCaptorHolder5 <out A , out B , out C , out D , out E >(
60
- val first : A , val second : B , val third : C , val fourth : D , val fifth : E )
72
+ val first : A , val second : B , val third : C , val fourth : D , val fifth : E
73
+ )
61
74
62
75
63
76
/* *
64
77
* Creates 4 [KArgumentCaptor]s for given types.
65
78
*/
66
- inline fun <reified A : Any , reified B : Any , reified C : Any , reified D : Any > argumentCaptor4 (): ArgumentCaptorHolder4 <KArgumentCaptor <A >, KArgumentCaptor<B>, KArgumentCaptor<C>, KArgumentCaptor<D>> {
79
+ inline fun <reified A : Any , reified B : Any , reified C : Any , reified D : Any > argumentCaptor (
80
+ a : KClass <A > = A : :class,
81
+ b : KClass <B > = B : :class,
82
+ c : KClass <C > = C : :class,
83
+ d : KClass <D > = D : :class
84
+ ): ArgumentCaptorHolder4 <KArgumentCaptor <A >, KArgumentCaptor<B>, KArgumentCaptor<C>, KArgumentCaptor<D>> {
67
85
return ArgumentCaptorHolder4 (
68
- KArgumentCaptor (ArgumentCaptor .forClass(A ::class .java), A ::class ),
69
- KArgumentCaptor (ArgumentCaptor .forClass(B ::class .java), B ::class ),
70
- KArgumentCaptor (ArgumentCaptor .forClass(C ::class .java), C ::class ),
71
- KArgumentCaptor (ArgumentCaptor .forClass(D ::class .java), D ::class ))
86
+ KArgumentCaptor (ArgumentCaptor .forClass(a.java), a),
87
+ KArgumentCaptor (ArgumentCaptor .forClass(b.java), b),
88
+ KArgumentCaptor (ArgumentCaptor .forClass(c.java), c),
89
+ KArgumentCaptor (ArgumentCaptor .forClass(d.java), d)
90
+ )
72
91
}
92
+
73
93
/* *
74
94
* Creates 4 [KArgumentCaptor]s for given types.
75
95
*/
76
- inline fun <reified A : Any , reified B : Any , reified C : Any , reified D : Any , reified E : Any > argumentCaptor5 (): ArgumentCaptorHolder5 <KArgumentCaptor <A >, KArgumentCaptor<B>, KArgumentCaptor<C>, KArgumentCaptor<D>, KArgumentCaptor<E>> {
96
+ inline fun <reified A : Any , reified B : Any , reified C : Any , reified D : Any , reified E : Any > argumentCaptor (
97
+ a : KClass <A > = A : :class,
98
+ b : KClass <B > = B : :class,
99
+ c : KClass <C > = C : :class,
100
+ d : KClass <D > = D : :class,
101
+ e : KClass <E > = E : :class
102
+ ): ArgumentCaptorHolder5 <KArgumentCaptor <A >, KArgumentCaptor<B>, KArgumentCaptor<C>, KArgumentCaptor<D>, KArgumentCaptor<E>> {
77
103
return ArgumentCaptorHolder5 (
78
- KArgumentCaptor (ArgumentCaptor .forClass(A ::class .java), A ::class ),
79
- KArgumentCaptor (ArgumentCaptor .forClass(B ::class .java), B ::class ),
80
- KArgumentCaptor (ArgumentCaptor .forClass(C ::class .java), C ::class ),
81
- KArgumentCaptor (ArgumentCaptor .forClass(D ::class .java), D ::class ),
82
- KArgumentCaptor (ArgumentCaptor .forClass(E ::class .java), E ::class ))
104
+ KArgumentCaptor (ArgumentCaptor .forClass(a.java), a),
105
+ KArgumentCaptor (ArgumentCaptor .forClass(b.java), b),
106
+ KArgumentCaptor (ArgumentCaptor .forClass(c.java), c),
107
+ KArgumentCaptor (ArgumentCaptor .forClass(d.java), d),
108
+ KArgumentCaptor (ArgumentCaptor .forClass(e.java), e)
109
+ )
83
110
}
84
111
85
-
86
-
87
112
/* *
88
113
* Creates a [KArgumentCaptor] for given type, taking in a lambda to allow fast verification.
89
114
*/
0 commit comments