Привет, у меня проблема с тестированием моего метода. Я высмеиваю свой репозиторий как DbSet. Мой метод модульного тестирования выглядит так:
public void Can_change_quantity_of_product()
{
//przygotowanie
var repo = CreateDbSetMock(new List<Processor>
{
new Processor{Product_ID = 1, Quantity = 20},
new Processor{Product_ID = 2, Quantity = 5}
});
var target = new ProductContext();
target.context.Processors = repo.Object;
//działanie
target.SellProduct(new OrderDetails { Product_ID = 1, Quantity = 5 });
//Asercje
Assert.AreEqual(target.TakeProcessors.ToList()[0].Quantity, 15);
}
И я получаю вот эту ошибку:
public IEnumerable<Product> TakeProcessors //Zwraca repozutorium procesorów jako lista klas Product.
{
get
{
return (from x in context.Processors
select new Product
{
ProductID = x.Product_ID,
Title = x.Title,
Price = x.Price,
Quantity = x.Quantity,
FDetail = SqlFunctions.StringConvert(x.Clock, 5, 1),
SDetail = SqlFunctions.StringConvert((double)x.Cores),
TDetail = SqlFunctions.StringConvert((decimal)x.Cache),
OrderDetails = x.OrderDetails,
Promoted = x.Promoted,
SoldPieces = x.OrderDetails.Count() == 0 ? 0 : x.OrderDetails.Sum(y => y.Quantity),
Category = "Procesory"
}).ToList();
}
}
Что я делаю не так?