无法使用犀牛模拟将 MSTest 转换为 NUnit 测试
Unable to convert MSTest to NUnit Test using rhino mocks
我正在关注此 post 以实施 MVP 模式。
http://www.bradoncode.com/blog/2012/04/mvp-design-pattern-survival-kit.html
在文章的最后进行了测试,这是在 Microsoft Visual studio 测试环境中使用 Mock 进行的,用于模拟依赖项。
在我的项目中,我使用 NUnit 测试环境和 RhinoMock 来模拟依赖项。
在文章中这些是设置的测试:
mockView.SetupSet(v => v.Products = It.Is<List<ProductItem>>(i => i.Count == 3))
.Verifiable();
mockView.SetupSet(v => v.Total = It.Is<decimal>(t => t == 8.97m))
.Verifiable();
mockView.SetupSet(v => v.SubTotal = It.Is<decimal>(t => t == 8.97m))
.Verifiable();
mockView.SetupSet(v => v.Discount = It.Is<decimal>(t => t == 0m))
.Verifiable();
我喜欢将这些行转换为设置期望,这是我尝试过的:
_view = MockRepository.GenerateMock<IView>();
_controller = new Presenter(_view);
_view.Expect(v => v.List = ???); // List is my property defined in IView
NOTE:I am using NUnit and Rhino mocks for mocking.
非常感谢任何帮助。
"fake object" 的语法。除了 --> Verify Exception
是验证行为的旧方法。
代码片段中的每一行都对单个 属性 提出了期望。
"newest" 和最简单的等效验证方法是:(将以下行放在 Assert
部分)
_view.AssertWasCalled(x => x.Products = Arg<IList<ProductItem>>
.Matches(list => list.Count == 3));
_view.AssertWasCalled(x => x.Total = 8.97m);
_view.AssertWasCalled(x => x.SubTotal = 8.97m);
_view.AssertWasCalled(x => x.Discount = 0m);
我正在关注此 post 以实施 MVP 模式。 http://www.bradoncode.com/blog/2012/04/mvp-design-pattern-survival-kit.html
在文章的最后进行了测试,这是在 Microsoft Visual studio 测试环境中使用 Mock 进行的,用于模拟依赖项。 在我的项目中,我使用 NUnit 测试环境和 RhinoMock 来模拟依赖项。
在文章中这些是设置的测试:
mockView.SetupSet(v => v.Products = It.Is<List<ProductItem>>(i => i.Count == 3))
.Verifiable();
mockView.SetupSet(v => v.Total = It.Is<decimal>(t => t == 8.97m))
.Verifiable();
mockView.SetupSet(v => v.SubTotal = It.Is<decimal>(t => t == 8.97m))
.Verifiable();
mockView.SetupSet(v => v.Discount = It.Is<decimal>(t => t == 0m))
.Verifiable();
我喜欢将这些行转换为设置期望,这是我尝试过的:
_view = MockRepository.GenerateMock<IView>();
_controller = new Presenter(_view);
_view.Expect(v => v.List = ???); // List is my property defined in IView
NOTE:I am using NUnit and Rhino mocks for mocking.
非常感谢任何帮助。
"fake object" 的语法。除了 --> Verify Exception
是验证行为的旧方法。
代码片段中的每一行都对单个 属性 提出了期望。
"newest" 和最简单的等效验证方法是:(将以下行放在 Assert
部分)
_view.AssertWasCalled(x => x.Products = Arg<IList<ProductItem>>
.Matches(list => list.Count == 3));
_view.AssertWasCalled(x => x.Total = 8.97m);
_view.AssertWasCalled(x => x.SubTotal = 8.97m);
_view.AssertWasCalled(x => x.Discount = 0m);