Следующий документ, связанный от проект RFC , упомянутый Jim в его ответе дальнейшие адреса вопрос и определенно стоящий прямого примечания здесь:
Тесты для заголовка Довольного Расположения HTTP и RFC 2231/2047, Кодирующего
Причина в этой строке :
httpContext.Setup(c => c.Request.RequestType).Returns(
verbs.ToString().ToUpper()
);
Технически это вторая установка
для объекта Request, и она стирает исходную установку
, даже если вы проходите мимо нее в иерархии объектов. . Я не уверен, является ли это ошибкой в Moq или желаемым поведением, я тоже сталкивался с этим раньше и не удосужился проверить это.
Вы можете решить эту проблему, переместив эту строку туда, где вы настраиваем ваш запрос выше, и настраиваем его напрямую, а не через httpContext. Итак,
request.Setup(c => c.RequestType).Returns(verbs.ToString().ToUpper());
Я также заметил, что объявленная вами "var u" не используется;)