C# 动态对象的模拟/存根框架

发布于 2024-12-04 16:59:25 字数 1539 浏览 1 评论 0原文

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

抱猫软卧 2024-12-11 16:59:25

好吧,你总是可以尝试模拟DynamicObject。它看起来有点不同,但它用你想要的任何东西模拟动态对象。

var fakeService = MockRepository.GenerateStub<DynamicObject>();
object outResult;
fakeService.Stub(s => s.TryInvokeMember(
               Property.Value("Name", "SomeMethod"),
               List.Equal(new{someValue}),
               out outResult))
           .OutRef(someResult)
           .Returns(true);
sut.MethodUnderTest(fakeService);

PS,请原谅任何犀牛模拟语法问题,我之前已经使用最小起订量完成了此操作,并且我刚刚使用犀牛模拟快速参考指南写出了相同的概念。

Well you could always try mocking DynamicObject. It would look a bit different but it mocks a dynamic object with whatever you want.

var fakeService = MockRepository.GenerateStub<DynamicObject>();
object outResult;
fakeService.Stub(s => s.TryInvokeMember(
               Property.Value("Name", "SomeMethod"),
               List.Equal(new{someValue}),
               out outResult))
           .OutRef(someResult)
           .Returns(true);
sut.MethodUnderTest(fakeService);

P.S. please excusing any rhino mocks syntax issues, i've done this using MOQ before and I just wrote out the same concept with the Rhino Mocks quick reference guide.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文