Testing RESTful web services with a custom mock
We have just seen how we can use a static resource and the StaticResourceCalloutMock and MultiStaticResourceCalloutMock classes to provide a mock implementation and response for a web service callout. We can also implement the HttpCalloutMock class ourselves to provide a custom mock to provide the responses we want. This interface has a single respond method that we need to implement. An example implementation is shown here:
@isTest
public with sharing class AccountServiceMock implements
HttpCalloutMock {
public HttpResponse respond(HttpRequest req) {
HttpResponse res = new HttpResponse();
res.setHeader('Content-Type', 'application/json');
res.setBody('{name:"Acme Anvils inc."}');
...