33
33
import org .springframework .messaging .support .MessageBuilder ;
34
34
35
35
/**
36
+ * Unit tests for
37
+ * {@link org.springframework.messaging.handler.annotation.support.MessageMethodArgumentResolver}.
36
38
*
37
39
* @author Stephane Nicoll
38
40
*/
@@ -45,101 +47,102 @@ public class MessageMethodArgumentResolverTests {
45
47
46
48
private Method method ;
47
49
50
+
48
51
@ Before
49
52
public void setup () throws Exception {
50
- method = MessageMethodArgumentResolverTests .class .getDeclaredMethod ("handleMessage" ,
53
+ this . method = MessageMethodArgumentResolverTests .class .getDeclaredMethod ("handleMessage" ,
51
54
Message .class , Message .class , Message .class , Message .class , ErrorMessage .class );
52
55
}
53
56
57
+
54
58
@ Test
55
59
public void resolveAnyPayloadType () throws Exception {
56
60
Message <String > message = MessageBuilder .withPayload ("test" ).build ();
57
- MethodParameter parameter = new MethodParameter (method , 0 );
61
+ MethodParameter parameter = new MethodParameter (this . method , 0 );
58
62
59
- assertTrue ("Parameter '" + parameter + "' should be supported" , resolver .supportsParameter (parameter ));
60
- assertSame (message , resolver .resolveArgument (parameter , message ));
63
+ assertTrue ("Parameter '" + parameter + "' should be supported" , this . resolver .supportsParameter (parameter ));
64
+ assertSame (message , this . resolver .resolveArgument (parameter , message ));
61
65
}
62
66
63
67
@ Test
64
68
public void resolvePayloadTypeExactType () throws Exception {
65
69
Message <Integer > message = MessageBuilder .withPayload (123 ).build ();
66
- MethodParameter parameter = new MethodParameter (method , 1 );
70
+ MethodParameter parameter = new MethodParameter (this . method , 1 );
67
71
68
- assertTrue ("Parameter '" + parameter + "' should be supported" , resolver .supportsParameter (parameter ));
69
- assertSame (message , resolver .resolveArgument (parameter , message ));
72
+ assertTrue ("Parameter '" + parameter + "' should be supported" , this . resolver .supportsParameter (parameter ));
73
+ assertSame (message , this . resolver .resolveArgument (parameter , message ));
70
74
}
71
75
72
76
@ Test
73
77
public void resolvePayloadTypeSubClass () throws Exception {
74
78
Message <Integer > message = MessageBuilder .withPayload (123 ).build ();
75
- MethodParameter parameter = new MethodParameter (method , 2 );
79
+ MethodParameter parameter = new MethodParameter (this . method , 2 );
76
80
77
- assertTrue ("Parameter '" + parameter + "' should be supported" , resolver .supportsParameter (parameter ));
78
- assertSame (message , resolver .resolveArgument (parameter , message ));
81
+ assertTrue ("Parameter '" + parameter + "' should be supported" , this . resolver .supportsParameter (parameter ));
82
+ assertSame (message , this . resolver .resolveArgument (parameter , message ));
79
83
}
80
84
81
85
@ Test
82
86
public void resolveInvalidPayloadType () throws Exception {
83
87
Message <String > message = MessageBuilder .withPayload ("test" ).build ();
84
- MethodParameter parameter = new MethodParameter (method , 1 );
88
+ MethodParameter parameter = new MethodParameter (this . method , 1 );
85
89
86
- assertTrue ("Parameter '" + parameter + "' should be supported" , resolver .supportsParameter (parameter ));
90
+ assertTrue ("Parameter '" + parameter + "' should be supported" , this . resolver .supportsParameter (parameter ));
87
91
thrown .expect (MethodArgumentTypeMismatchException .class );
88
92
thrown .expectMessage (Integer .class .getName ());
89
93
thrown .expectMessage (String .class .getName ());
90
- resolver .resolveArgument (parameter , message );
94
+ this . resolver .resolveArgument (parameter , message );
91
95
}
92
96
93
97
@ Test
94
98
public void resolveUpperBoundPayloadType () throws Exception {
95
99
Message <Integer > message = MessageBuilder .withPayload (123 ).build ();
96
- MethodParameter parameter = new MethodParameter (method , 3 );
100
+ MethodParameter parameter = new MethodParameter (this . method , 3 );
97
101
98
- assertTrue ("Parameter '" + parameter + "' should be supported" , resolver .supportsParameter (parameter ));
99
- assertSame (message , resolver .resolveArgument (parameter , message ));
102
+ assertTrue ("Parameter '" + parameter + "' should be supported" , this . resolver .supportsParameter (parameter ));
103
+ assertSame (message , this . resolver .resolveArgument (parameter , message ));
100
104
}
101
105
102
106
@ Test
103
107
public void resolveOutOfBoundPayloadType () throws Exception {
104
108
Message <Locale > message = MessageBuilder .withPayload (Locale .getDefault ()).build ();
105
- MethodParameter parameter = new MethodParameter (method , 3 );
109
+ MethodParameter parameter = new MethodParameter (this . method , 3 );
106
110
107
- assertTrue ("Parameter '" + parameter + "' should be supported" , resolver .supportsParameter (parameter ));
111
+ assertTrue ("Parameter '" + parameter + "' should be supported" , this . resolver .supportsParameter (parameter ));
108
112
thrown .expect (MethodArgumentTypeMismatchException .class );
109
113
thrown .expectMessage (Number .class .getName ());
110
114
thrown .expectMessage (Locale .class .getName ());
111
- resolver .resolveArgument (parameter , message );
115
+ this . resolver .resolveArgument (parameter , message );
112
116
}
113
117
114
118
@ Test
115
119
public void resolveMessageSubTypeExactMatch () throws Exception {
116
120
ErrorMessage message = new ErrorMessage (new UnsupportedOperationException ());
117
- MethodParameter parameter = new MethodParameter (method , 4 );
121
+ MethodParameter parameter = new MethodParameter (this . method , 4 );
118
122
119
- assertTrue ("Parameter '" + parameter + "' should be supported" , resolver .supportsParameter (parameter ));
120
- assertSame (message , resolver .resolveArgument (parameter , message ));
123
+ assertTrue ("Parameter '" + parameter + "' should be supported" , this . resolver .supportsParameter (parameter ));
124
+ assertSame (message , this . resolver .resolveArgument (parameter , message ));
121
125
}
122
126
123
127
@ Test
124
128
public void resolveMessageSubTypeSubClass () throws Exception {
125
129
ErrorMessage message = new ErrorMessage (new UnsupportedOperationException ());
126
- MethodParameter parameter = new MethodParameter (method , 0 );
130
+ MethodParameter parameter = new MethodParameter (this . method , 0 );
127
131
128
- assertTrue ("Parameter '" + parameter + "' should be supported" , resolver .supportsParameter (parameter ));
129
- assertSame (message , resolver .resolveArgument (parameter , message ));
132
+ assertTrue ("Parameter '" + parameter + "' should be supported" , this . resolver .supportsParameter (parameter ));
133
+ assertSame (message , this . resolver .resolveArgument (parameter , message ));
130
134
}
131
135
132
136
@ Test
133
137
public void resolveWrongMessageType () throws Exception {
134
- Message <? extends Throwable > message = new GenericMessage <Throwable >(
135
- new UnsupportedOperationException ());
136
- MethodParameter parameter = new MethodParameter (method , 4 );
138
+ Message <? extends Throwable > message = new GenericMessage <Throwable >(new UnsupportedOperationException ());
139
+ MethodParameter parameter = new MethodParameter (this .method , 4 );
137
140
138
- assertTrue ("Parameter '" + parameter + "' should be supported" , resolver .supportsParameter (parameter ));
141
+ assertTrue ("Parameter '" + parameter + "' should be supported" , this . resolver .supportsParameter (parameter ));
139
142
thrown .expect (MethodArgumentTypeMismatchException .class );
140
143
thrown .expectMessage (ErrorMessage .class .getName ());
141
144
thrown .expectMessage (GenericMessage .class .getName ());
142
- assertSame (message , resolver .resolveArgument (parameter , message ));
145
+ assertSame (message , this . resolver .resolveArgument (parameter , message ));
143
146
}
144
147
145
148
@ SuppressWarnings ("unused" )
0 commit comments