У меня есть интерфейс, определенный как
interface IMath
{
AddNumbersBetween(int lowerVal, int upperVal);
}
Я могу настроить базовый Moq для вышеперечисленного следующим образом:
Mock<IMath> mock = new Mock<IMath>();
mock.Setup(m => m.AddNumbersBetween(It.IsAny<int>(), It.IsAny<int>()));
назовите его
mock.Object.AddNumbersBetween(1,4);
а затем убедитесь, что он был вызван
mock.Verify(m => m.AddNumbersBetween(1,4), Times.AtleastOnce());
Я не могу понять, как настроить метод AddNumbersBetween таким образом, что если upperVal ниже, чем lowerVal, исключение вызывается
mock.Object.AddNumbersBetween(4,1);//should throw an exception
По существу ищет что-то вроде:
mock.Setup(foo => foo.AddNumbersBetween("arg1 is higher than arg2")).Throws<ArgumentException>();