当前位置 : 主页 > 手机开发 > 其它 >

构造函数 – Typemock Isolator:模拟一个未注入的依赖项?

来源:互联网 收集:自由互联 发布时间:2021-06-22
我的WidgetDoer类依赖于Foo,它不是注入的.我需要伪造_foo的DoStuffWith()实现(然后验证Do()返回结果 – 这是我真实代码的简化表示). public class WidgetDoer { readonly Foo _foo; public WidgetDoer() { _foo = n
我的WidgetDoer类依赖于Foo,它不是注入的.我需要伪造_foo的DoStuffWith()实现(然后验证Do()返回结果 – 这是我真实代码的简化表示).

public class WidgetDoer {
    readonly Foo _foo;

    public WidgetDoer() {
        _foo = new Foo();
    }

    public Bar Do(Widget widget) {
        var result = _foo.DoStuffWith(widget);
        return result;
    }
}

我尝试使用以下Isolator语法来防止创建真正的Foo对象(在WidgetDoer()构造函数内),但无论如何都要实例化真正的Foo对象:

var fooFake = Isolate.Fake.Instance<Foo>();
Isolate.WhenCalled(() => new Foo()).WillReturn(fooFake);

我可以使用Typemock来模拟未注入的依赖项吗?

这段代码允许我模拟耦合依赖:

Isolate.Swap.NextInstance<Foo>().With(FooFake);

请记住,TypeMock supports very few types from mscorlib.

网友评论