Я использую ядро .net, создающее API. Одним из моих методов является POST, который вставляет новую запись. Успешный ответ возвращает 201. В .net я могу использовать помощник CreatedResult, например.Unit Test Url.Link in .net core
return Created(new Uri(Url.Link("get_method", new { id = record.id })), record);
Это вернет ответ 201 с правильным набором заголовков местоположения. Заголовок заголовка использует входящий запрос для создания URL-адреса с использованием имени хоста.
При модульном тестировании в .net webapi2 я мог бы создать пользовательское HttpRequestMessage и сам установить имя хоста. Теперь это, похоже, исчезло в новой структуре ядра .net.
Как мне высмеять входящий запрос, чтобы я мог выполнить модульный тест и создать допустимый заголовок местоположения.
Я считаю, что мне нужно высмеивать HttpRequest в HttpContext для контроллера.
UserController controller = new UserController();
controller.ControllerContext.HttpContext.Request = ?
Как я могу искупить этот параметр запроса? Это свойство readonly.