Verspotten der CreateResponse <T> -Erweiterungsmethode in HttpRequestMessage

Ich verwende den ApiController von ASP.Net MVC 4 RC und versuche, eine GET-Methode zu testen.

Diese Methode verwendet dieCreateResponse<T> Methode, die auf der istHttpRequestMessage, aber ich habe keine Ahnung, wie ich das verspotten oder es richtig funktionieren lassen soll.

Der Körper der Methode enthält Folgendes:

MediaTypeHeaderValue header = new MediaTypeHeaderValue(versionedSmartBlock.ContentType);
var response = Request.CreateResponse<SmartBlock>(
    HttpStatusCode.OK, versionedSmartBlock, header);

In meinem Unit-Test erstelle ich eine leereHttpRequestMessage:

CallsController api = new CallsController(
    managerMock.Object, config, adapterFactoryMock.Object);
api.Request = new HttpRequestMessage(
    HttpMethod.Get, "http://localhost/Initiate?ern=%2B44123456789");    
var response = api.Get("+44123456789", null);

Aber es erzeugt nur eineInvalidOperationException:

Der Anforderung ist kein Konfigurationsobjekt zugeordnet, oder die angegebene Konfiguration war null.

Hat jemand irgendwelche Hinweise, wie ich das konfigurieren kannHttpRequestMessage so, dass dieCreateResponse Methode macht eigentlich ihren Job?

Antworten auf die Frage(2)

Ihre Antwort auf die Frage