@Test
public void testFormParamInjectionIntoMethod() throws Exception {
JaxRsHandler handler = HandlerCreator.getHandler(TestResourceForDefaultValue.class);
RequestImpl request = new RequestImpl();
RequestURIImpl uri = new RequestURIImpl();
uri.setPath("/test-resource/setForm");
String[] values = new String[1];
values[0] = "application/x-www-form-urlencoded";
request.setHeader(HeaderName.CONTENT_TYPE, values);
request.setMessageBody(new MessageBody2Write() {
@Override
public void writeTo(WritableByteChannel cout)
throws IOException {
OutputStream out = Channels.newOutputStream(cout);
String str = new String("foo=test&bar=pwd");
out.write(str.getBytes());
}
});
request.setRequestURI(uri);
request.setMethod(Method.POST);
Response response = new ResponseImpl();
handler.handle(request, response);
assertEquals("defaultFP1", TestResourceForDefaultValue.username);