Тест сервиса скидок падает с NullReferenceException внутри кода, а не в проверке
var customers = new Mock<ICustomerRepository>();
var service = new DiscountService(customers.Object);
var price = service.PriceFor(customerId: 42, basePrice: 1000);
Assert.Equal(900, price);
Внутри PriceFor вызывается _customers.Find(42).IsVip. Тест падает с NullReferenceException. Почему?
- Мок без Setup возвращает null для ссылочных типов
- Moq не умеет мокать интерфейсы репозиториев
- Mock.Object нужно создавать после вызова метода
- Moq возвращает случайного клиента без флага VIP
