Используйте ItExpr.IsNull, а не значение аргумента null, поскольку это предотвращает правильный поиск метода
Я пытаюсь написать модульный тест, где мне нужно создать защищенный метод. Я использую Moq для этой установки.
_innerHandler.Protected()
.Setup<Task<HttpResponseMessage>>("SendAsync", It.IsAny<HttpRequestMessage>(), It.IsAny<CancellationToken>())
.ReturnsAsync(responseMessage);
когда эта строка выполняется, она бросает следующее исключение:
1 ответов
при создании IProtectedMock
, вы должны использовать Moq.Protected.ItExpr
вместо Moq.It
.
вот исправленная реализация того, что я пытался сделать в своем вопросе:
_innerHandler.Protected()
.Setup<Task<HttpResponseMessage>>("SendAsync", ItExpr.IsAny<HttpRequestMessage>(), ItExpr.IsAny<CancellationToken>())
.ReturnsAsync(responseMessage);