Я видел много вопросов о модульном тестировании автомаппера 'map', но как вы смеетесь над MapTo?Это ожидает IMapper как его объект.Итак, это то, что я до сих пор:
private Mock<IMapper> _mapper;
[TestInitialize]
public void Init()
{
_mapper = new Mock<IMapper>();
//other stuff initialised.
}
[TestMethod]
public void MyTest()
{
_mapper.Setup(m => m.MapTo<IList<Something>>(_mapper.Object)).Returns(myList);
//setup repository etc.
}
Это выдает ошибку «Неверная установка для метода расширения ...».Итак, как мне сделать вызов «MapTo»?
Просто чтобы уточнить, я знаю, что могу использовать актуальную версию картографа и создавать реальные карты, такие как:
private MapperConfiguration CreateMaps()
{
return new MapperConfiguration(mc =>
{
mc.CreateMap<MyEntity, MyObject>();
mc.CreateMap<MyOtherEntity, MyOtherObject>();
});
}
_mapper = new Mapper(CreateMaps());
Тем не менее, мне все еще было любопытно, как издеваться над этим.Кажется, это легко сделать с помощью Map, но не MapTo