Moq - 使用CallBase = true从另一个内部调用的方法获取返回值

时间:2017-11-24 14:51:15

标签: c# moq unity-container

如果我有:

public class TestClass
{
  public void Method1(object data)
  {
    var otherClass = UnityContainer.Resolve(data) as OtherClass;
    var result = otherClass.Method2();
  }
}

我想运行OtherClass的实际实现,而不是使用:

来模拟它
var testClass = new Mock<TestClass>() { CallBase = true }

(我正在编写依赖注入测试)

有没有办法可以测试OtherClass()的返回值。方法2()?

具体来说,我想这样做:

var testClass1 = new Mock<TestClass>() { CallBase = true }
var testClass2 = new Mock<TestClass>() { CallBase = true }

Assert.Same(resultOfTestClass1OtherClassMethod2, resultOfTestClass2OtherClassMethod2)

检查我是否正在返回相同的实例,并且我已在Unity中正确设置了内容。

那里有帮助者吗?

0 个答案:

没有答案