Support mock objects for easier testing on jaxrs
------------------------------------------------

                 Key: CXF-3163
                 URL: https://issues.apache.org/jira/browse/CXF-3163
             Project: CXF
          Issue Type: New Feature
    Affects Versions: 2.3.1
            Reporter: Rice Yeh


I move my implementation of JAX-RS from RestEasy to CXF. One feature in 
RestEasy I like is that it provides a very simple way to test my resources. Its 
test code is like below:

        this.dispatcher = MockDispatcherFactory.createDispatcher();
        this.dispatcher.getRegistry().addResourceFactory(new 
POJOResourceFactory(organization.class), "hr");
        this.dispatcher.getRegistry().addResourceFactory(new 
POJOResourceFactory(bureaucracy.class), "hr");   

        MockHttpRequest request = MockHttpRequest.get("/hr/bureaucracy/" + 
oid(b) + "/organization/" + oid(finance) +"/children");
        MockHttpResponse response = new MockHttpResponse();
        this.dispatcher.invoke(request, response);
        System.out.println(response.getContentAsString());
        assert response.getStatus() == 200;

That is, I don't need to startup http (jetty) server. All (server and client) 
are done in memory and in one thread which makes makes inspection on exception 
stack track easy when things go wrong. For cxf, WebClient is totally coupled 
with http and local transport is not supported by its jaxrs implementation.

Regards,
Rice


-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to