我有一个接口定义为
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,如果上面的 Val 小于下面的 Val,就会抛出异常
mock.Object.AddNumbersBetween(4,1);//should throw an exception
基本上就是在寻找这样的东西:
mock.Setup(foo => foo.AddNumbersBetween("arg1 is higher than arg2")).Throws<ArgumentException>();