@@ -27,8 +27,12 @@ private fun FullInitializedCallTest.Class.topLevelExtensionFunc(arg1: Int, arg2:
27
27
* - インスタンスメソッド + インスタンス
28
28
* - コンパニオンオブジェクトに定義したメソッド
29
29
* - コンパニオンオブジェクトに定義したメソッド + コンパニオンオブジェクトインスタンス
30
+ * - リフレクションで取得したコンパニオンオブジェクトに定義したメソッド
31
+ * - リフレクションで取得したコンパニオンオブジェクトに定義したメソッド + コンパニオンオブジェクトインスタンス
30
32
* - トップレベル関数
31
- * - トップレベル拡張関数 + レシーバインスタンス
33
+ * - クラスから取得したトップレベル拡張関数 + レシーバインスタンス
34
+ * - インスタンスから取得したトップレベル拡張関数
35
+ * - インスタンスから取得したトップレベル拡張関数 + インスタンス
32
36
*/
33
37
@TestInstance(TestInstance .Lifecycle .PER_CLASS )
34
38
private class FullInitializedCallTest {
@@ -84,9 +88,21 @@ private class FullInitializedCallTest {
84
88
Arguments .of(::instanceFunction, null , " instance func" ),
85
89
Arguments .of(::instanceFunction, this , " instance func with instance" ),
86
90
Arguments .of((Dst )::of, null , " companion object func" ),
87
- Arguments .of(companionRawFunc, Dst ::class .companionObjectInstance, " companion object func with instance" ),
91
+ Arguments .of((Dst )::of, Dst ::class .companionObjectInstance, " companion object func with instance" ),
92
+ Arguments .of(companionRawFunc, null , " companion object func from reflection" ),
93
+ Arguments .of(
94
+ companionRawFunc,
95
+ Dst ::class .companionObjectInstance,
96
+ " companion object func from reflection with instance"
97
+ ),
88
98
Arguments .of(::topLevelFunc, null , " top level func" ),
89
- Arguments .of(Class ::topLevelExtensionFunc, Class (), " top level extension func" )
99
+ Arguments .of(Class ::topLevelExtensionFunc, Class (), " top level extension func from class" ),
100
+ Class ().let {
101
+ Arguments .of(it::topLevelExtensionFunc, null , " top level extension func from instance" )
102
+ },
103
+ Class ().let {
104
+ Arguments .of(it::topLevelExtensionFunc, it, " top level extension func from instance with instance" )
105
+ }
90
106
).stream()
91
107
}
92
108
}
0 commit comments