У меня есть параметр, переданный в контроллер, подобный этому
private EnglishForwardLotServiceBase<EnglishForwardLotData, AuctionData, LotFragmentData> englishForwardLotServiceBase;
public EnglishForwardController(
EnglishForwardLotServiceBase<EnglishForwardLotData, AuctionData, LotFragmentData> englishForwardLotServiceBase)
{
this.englishForwardLotServiceBase = englishForwardLotServiceBase;
}
Определение EnglishForwardLotServiceBase
public class EnglishForwardLotServiceBase<LotData, AuctionData, LotFragmentData> : IEnglishForwardLotService<LotData> where AuctionData : PerfectChannel.Services.EnglishForwardLot.IEnglishForwardLotSetup
Итак, в моем тесте я пытаюсь издеваться над englishForwardLotServiceBase
вот так
IFixture fixture = new Fixture().Customize(new AutoMoqCustomization());
Mock<IEnglishForwardLotService<EnglishForwardLotData>> englishForwardLotServiceBaseMock = fixture.Freeze<Mock<IEnglishForwardLotService<EnglishForwardLotData>>>();
Проблема в том, что Autofiture/Moq использует не фиктивный параметр версии EnglishForwardLotServiceBase
, а фактическую реализацию. Из-за этого мои тесты проваливаются, как вы можете себе представить.
В чем может быть проблема?