2013-04-14 2 views
0

Как я Макет список объектов в циклRhino Mock, Mock список интерфейса

Вот код: `

public class SearchResult<T> 
    { 


     private readonly ISearcher<T> _searcher; 
     private readonly IList<ISearchConfigurator> _configurators; 


     public SearchResult(ISearcher<T> searcher, IList<ISearchConfigurator> configurators) 
     { 
      _searcher = searcher; 
      _configurators = configurators; 
     } 


     public DomainSearchResult<T> FindInAllDomains() 
     { 
      DomainSearchResult domainSearchResults = new DomainSearchResult<T>(); 
      foreach (var configurator in _configurators) 
      { 
       IList<T> results = _searcher.SearchAll(configurator); 
       domainSearchResults.Results.Add(_configurator.DomainName, results); 
      } 
      return domainSearchResults; 
     } 
    }` 

результат свойство объявляется в классе DomainSearchResult:

IDictionary<string,IList<T>> Results { get; set; } 

тогда я попытался следующие:

 [Test] 
    public void FindInAllDomains_ReturnsAllRecord() 
    { 
     //Arrange 
     var configuratorMock = MockRepository.GenerateStub<IList<ISearchConfigurator>>(); 
     var searchMock = MockRepository.GenerateMock<ISearcher<NativeDs>>(); 
     var searchRestul = new SearchResult<NativeDs>(searchMock, configuratorMock); 

     //Act 
     searchRestul.FindInAllDomains(); // calling test fail here 

     //Assert 
     searchMock.AssertWasCalled(x => x.SearchAll(null), opt => opt.IgnoreArguments()); 
    } 

Ошибка: System.NullReferenceException: Ссылка на объект не установлена ​​в экземпляр объекта.

ответ

0

Попробуйте это ...

var list = new List<ISearchConfigurator> 
      (from x in Enumerable.Range(1, 100) 
      select MockRepository.GenerateMock<ISearchConfigurator>() 
     ); 
Смежные вопросы