Nunit DynamicMock C # Ведущий класс - PullRequest
0 голосов
/ 04 апреля 2011

Я новичок в тестировании Nunit, и я надеялся, что кто-нибудь может дать мне краткое объяснение или даже ссылку на сайт, где я могу получить хорошее объяснение и пример кода для использования DynamicMock.ExpectAndReturn.

Я пробую шаблон MVP, и в моем классе докладчика у меня настроен юнит-тест следующим образом

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

У меня есть строковое свойство "Имя", я хотел убедиться, что приведенный ниже код является допустимым тестом докладчика? Я попробовал следующий код

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 голосов
/ 13 апреля 2011

Вам необходимо использовать 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/

...