@@ -43,6 +43,80 @@ public void allNamedParams() throws Exception {
43
43
assertEquals (2 , namedParams .get ("two" ));
44
44
}
45
45
46
+ @ Test
47
+ public void noNamedParamsPassParamsAuto () throws Exception {
48
+
49
+ Object [] arguments = {"1" , 2 };
50
+ assertSame (arguments , ReflectionUtil .parseArguments (JsonRpcTestService .class .getMethod ("noNamedParamsPassParamsAuto" , String .class , int .class ), arguments ));
51
+ }
52
+
53
+ @ Test (expected = RuntimeException .class )
54
+ public void someNamedParamsPassParamsAuto () throws Exception {
55
+
56
+ ReflectionUtil .parseArguments (JsonRpcTestService .class .getMethod ("someNamedParamsPassParamsAuto" , String .class , int .class ), null );
57
+ }
58
+
59
+ @ Test
60
+ public void allNamedParamsPassParamsAuto () throws Exception {
61
+
62
+ Object [] arguments = {"1" , 2 };
63
+ @ SuppressWarnings ("unchecked" )
64
+ Map <String , Object > namedParams = (Map <String , Object >) ReflectionUtil .parseArguments (JsonRpcTestService .class .getMethod ("allNamedParamsPassParamsAuto" , String .class , int .class ), arguments );
65
+
66
+ assertEquals (2 , namedParams .size ());
67
+ assertEquals ("1" , namedParams .get ("one" ));
68
+ assertEquals (2 , namedParams .get ("two" ));
69
+ }
70
+
71
+ @ Test
72
+ public void noNamedParamsPassParamsArray () throws Exception {
73
+
74
+ Object [] arguments = {"1" , 2 };
75
+ assertSame (arguments , ReflectionUtil .parseArguments (JsonRpcTestService .class .getMethod ("noNamedParamsPassParamsArray" , String .class , int .class ), arguments ));
76
+ }
77
+
78
+ @ Test (expected = RuntimeException .class )
79
+ public void someNamedParamsPassParamsArray () throws Exception {
80
+
81
+ ReflectionUtil .parseArguments (JsonRpcTestService .class .getMethod ("someNamedParamsPassParamsArray" , String .class , int .class ), null );
82
+ }
83
+
84
+ @ Test
85
+ public void allNamedParamsPassParamsArray () throws Exception {
86
+
87
+ Object [] arguments = {"1" , 2 };
88
+ Object [] params = (Object []) ReflectionUtil .parseArguments (JsonRpcTestService .class .getMethod ("allNamedParamsPassParamsArray" , String .class , int .class ), arguments );
89
+
90
+ assertEquals (2 , params .length );
91
+ assertEquals ("1" , params [0 ]);
92
+ assertEquals (2 , params [1 ]);
93
+ }
94
+
95
+ @ Test (expected = RuntimeException .class )
96
+ public void noNamedParamsPassParamsObject () throws Exception {
97
+
98
+ Object [] arguments = {"1" , 2 };
99
+ ReflectionUtil .parseArguments (JsonRpcTestService .class .getMethod ("noNamedParamsPassParamsObject" , String .class , int .class ), arguments );
100
+ }
101
+
102
+ @ Test (expected = RuntimeException .class )
103
+ public void someNamedParamsPassParamsObject () throws Exception {
104
+
105
+ ReflectionUtil .parseArguments (JsonRpcTestService .class .getMethod ("someNamedParamsPassParamsObject" , String .class , int .class ), null );
106
+ }
107
+
108
+ @ Test
109
+ public void allNamedParamsPassParamsObject () throws Exception {
110
+
111
+ Object [] arguments = {"1" , 2 };
112
+ @ SuppressWarnings ("unchecked" )
113
+ Map <String , Object > namedParams = (Map <String , Object >) ReflectionUtil .parseArguments (JsonRpcTestService .class .getMethod ("allNamedParamsPassParamsAuto" , String .class , int .class ), arguments );
114
+
115
+ assertEquals (2 , namedParams .size ());
116
+ assertEquals ("1" , namedParams .get ("one" ));
117
+ assertEquals (2 , namedParams .get ("two" ));
118
+ }
119
+
46
120
private interface JsonRpcTestService {
47
121
48
122
void noParams ();
@@ -52,5 +126,32 @@ private interface JsonRpcTestService {
52
126
void someNamedParams (@ JsonRpcParam ("one" ) String one , int two );
53
127
54
128
void allNamedParams (@ JsonRpcParam ("one" ) String one , @ JsonRpcParam ("two" ) int two );
129
+
130
+ @ JsonRpcMethod (value = "noNamedParamsPassParamsAuto" , paramsPassMode = JsonRpcParamsPassMode .AUTO )
131
+ void noNamedParamsPassParamsAuto (String one , int two );
132
+
133
+ @ JsonRpcMethod (value = "someNamedParamsPassParamsAuto" , paramsPassMode = JsonRpcParamsPassMode .AUTO )
134
+ void someNamedParamsPassParamsAuto (@ JsonRpcParam ("one" ) String one , int two );
135
+
136
+ @ JsonRpcMethod (value = "allNamedParamsPassParamsAuto" , paramsPassMode = JsonRpcParamsPassMode .AUTO )
137
+ void allNamedParamsPassParamsAuto (@ JsonRpcParam ("one" ) String one , @ JsonRpcParam ("two" ) int two );
138
+
139
+ @ JsonRpcMethod (value = "noNamedParamsPassParamsArray" , paramsPassMode = JsonRpcParamsPassMode .ARRAY )
140
+ void noNamedParamsPassParamsArray (String one , int two );
141
+
142
+ @ JsonRpcMethod (value = "someNamedParamsPassParamsArray" , paramsPassMode = JsonRpcParamsPassMode .ARRAY )
143
+ void someNamedParamsPassParamsArray (@ JsonRpcParam ("one" ) String one , int two );
144
+
145
+ @ JsonRpcMethod (value = "allNamedParamsPassParamsArray" , paramsPassMode = JsonRpcParamsPassMode .ARRAY )
146
+ void allNamedParamsPassParamsArray (@ JsonRpcParam ("one" ) String one , @ JsonRpcParam ("two" ) int two );
147
+
148
+ @ JsonRpcMethod (value = "noNamedParamsPassParamsObject" , paramsPassMode = JsonRpcParamsPassMode .OBJECT )
149
+ void noNamedParamsPassParamsObject (String one , int two );
150
+
151
+ @ JsonRpcMethod (value = "someNamedParamsPassParamsObject" , paramsPassMode = JsonRpcParamsPassMode .OBJECT )
152
+ void someNamedParamsPassParamsObject (@ JsonRpcParam ("one" ) String one , int two );
153
+
154
+ @ JsonRpcMethod (value = "allNamedParamsPassParamsObject" , paramsPassMode = JsonRpcParamsPassMode .OBJECT )
155
+ void allNamedParamsPassParamsObject (@ JsonRpcParam ("one" ) String one , @ JsonRpcParam ("two" ) int two );
55
156
}
56
157
}
0 commit comments