Nunit DynamicMock C#Presenter类

时间:2011-04-04 15:29:51

标签: c# visual-studio-2010 visual-studio-2008 mocking nunit

我是Nunit测试的新手,我希望有人可以给我一个简短的解释,甚至链接到一个网站,我可以得到一个很好的解释和使用DynamicMock.ExpectAndReturn的示例代码。

我正在尝试MVP模式,而我的演示者类我已经设置了单元测试,如下所示

mock = new DynamicMock(typeof(I_MyInterface));
View = new MyPresenterClass((I_MyInterface)mock.MockInstance);
view.Initialise();

我有一个字符串属性“Name”,我想确保下面的代码是一个有效的演示者测试?我尝试了以下代码

mock.ExpectAndReturn("get_Name", "Yoda");
Assert.AreEqual("Yoda", ((I_MyInterface)mock.MockInstance).Name);

我的最后一个问题是,我如何测试一个方法,我的演示者正确地返回了一个值并正确设置了一个属性。例如方法

public bool NameIt(int i)
{
     if(i<20)
     {
          view.Name="Yoda";
          return true;
     }
     return false;
 }

有人可以告诉我如何通过动态模拟测试这个吗?

提前谢谢!

1 个答案:

答案 0 :(得分:0)

您需要使用ExpectAndReutrn。

 // Tell that mock object when the "GetPeople" method is 
 // called to return a predefined list of people
 personRepositoryMock.ExpectAndReturn("GetPeople", peopleList);

完整示例是http://www.zorched.net/2007/03/10/mocking-net-objects-with-nunit/