2015-10-08 3 views
0

У меня есть и интерфейс IDatabaseInteraction:Проверьте и установите параметр списка в зависимости от фиктивного объекта

public interface IDatabaseInteraction 
{ 
    void FillAppSection(List<AppSectionId> appSectionIds); 
} 

Определение для AppSectionId является:

public class AppSectionId 
{ 
    public string App; 
    public string Section; 
    public int Id; 
} 

Я отведенной вызов базы данных в IDatabaseInteraction для класса под контрольная работа. Список приходит (в этом элементе testcase 1 в appSectionIds) и обновляется в методе FillAppSection, идентификатор заполняется. Я хочу проверить значения элементов приложения и раздела, а во-вторых, я хочу установить идентификатор. Как это сделать с помощью moq?

ответ

1

Я бы обычно менял этот метод, чтобы вернуть List<AppSectionId>, поскольку я думаю, что это яснее. Тем не менее, если вы хотите продолжать, как это, то вы можете использовать метод Callback MOq, что-то вроде этого:

Mock<IDatabaseInteraction> databaseInteraction = new Mock<IDatabaseInteraction>(); 
databaseInteraction.Setup(x => x.FillAppSection(It.IsAny<List<AppSectionId>>())).Callback((List<AppSectionId> x) => x.Add(someObject)); 

Внутри Callback метода вы можете настроить List однако вам нравится.

Смежные вопросы