Я использую ApiController ASP.Net MVC 4 RC, и я пытаюсь выполнить модульный тест методом Get.Как издеваться над методом CreateResponse <T> на HttpRequestMessage
Этот метод использует метод CreateResponse, который находится в HttpRequestMessage, но я не знаю, как это сделать или заставить его функционировать правильно.
Тело методы содержит следующее:
MediaTypeHeaderValue header = new MediaTypeHeaderValue(versionedSmartBlock.ContentType);
var response = Request.CreateResponse<SmartBlock>(HttpStatusCode.OK, versionedSmartBlock, header);
В моем модульном тестировании, я создаю пустой HttpRequestMessage:
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);
Но это только генерирует InvalidOperationException:
запрос не имеют связанный объект конфигурации или предоставленная конфигурация имеет значение null.
У кого-нибудь есть указатели на то, как я могу настроить HttpRequestMessage, чтобы метод CreateResponse фактически выполнял свою работу?
Похоже, что он обращается к той же проблеме: http://stackoverflow.com/questions/10868673/asp-net-webapi-unit-testing-with-request-createresponse –