关于c# mock
发布网友
发布时间:2022-04-22 14:46
我来回答
共1个回答
热心网友
时间:2023-08-29 12:06
你又问了一遍啊..
public class A
{
public int MethodA(int i,IB b)
{
return b.MethodB(i) - i;
}
public int MethodB(int i)
{
return new B().MethodB(i) - 1;
}
}
public interface IB
{
int MethodB(int i);
}
public class B :IB
{
public int MethodB(int i)
{
throw new Exception();
}
}
测试A类中的MethodA方法
[TestMethod()]
public void MethodATest()
{
A target = new A(); // TODO: 初始化为适当的值
int i = 11; // TODO: 初始化为适当的值
var mock = new Mock<IB>();
mock.Setup(p => p.MethodB(11))
.Returns(20);
IB b = mock.Object; // TODO: 初始化为适当的值
int expected = 9; // TODO: 初始化为适当的值
int actual;
actual = target.MethodA(i, b);
Assert.AreEqual(expected, actual);
}