Я разрабатываю веб-API, и один из тестов, которые я придумал, заключается в том, что если клиент выполняет операцию GET с идентификатором физического теста (физический тест - это ресурс, который я ищу) и этот физический тест не найден, веб-API должен вернуть статус 404.
Теперь я использую рамки moq для своих тестов, и у меня есть следующий код:
[TestMethod]
public void then_if_physical_test_not_found_return_not_found_status()
{
var unitOfWork = new Mock<IUnitOfWork>();
var repository = new Mock<IRepository<PhysicalTest>>();
repository.Setup(r => r.FindById(It.IsAny<int>())).Returns();
unitOfWork.Setup(m => m.PhysicalTests).Returns(repository.Object);
var pt = new PhysicalTestResource(unitOfWork.Object);
HttpResponseMessage<PhysicalTest> response = pt.GetPhysicalTest(43);
Assert.AreEqual(HttpStatusCode.NotFound, response.StatusCode)
}
Мне нужен метод Returns() для возврата нулевого объекта, который будет тем, что вернет фактический API-метод, если ресурс не найден.
Я попытался отправить значение null в качестве параметра в метод Returns(), но не имел успеха.