@Test
public void injectIntoProviderField() throws Exception {
Object[] components = { new MyMessageBodyWriter(), new MyResource() };
JaxRsHandler handler = HandlerCreator.getHandler("", components);
Request requestMock = EasyMock.createNiceMock(Request.class);
EasyMock.makeThreadSafe(requestMock, true);
ResponseImpl responseImpl = new ResponseImpl();
expect(requestMock.getMethod()).andReturn(Method.GET).anyTimes();
RequestURI requestURI = EasyMock.createNiceMock(RequestURI.class);
EasyMock.makeThreadSafe(requestURI, true);
String queryString = "key=value";
expect(requestURI.getQuery()).andReturn(queryString).anyTimes();
expect(requestURI.getPath()).andReturn("/").anyTimes();
expect(requestMock.getRequestURI()).andReturn(requestURI).anyTimes();
replay(requestMock);
replay(requestURI);
handler.handle(requestMock, responseImpl);
responseImpl.consumeBody();
Assert.assertArrayEquals(queryString.getBytes(), responseImpl.getBodyBytes());
}