public void Adaptor_PassesOfferVouchersToValidator() { var offerVoucherA = new OfferVoucher(10m, 10m); var offerVoucherB = new OfferVoucher(10m, 10m); var giftVoucher = new GiftVoucher(10m); var mixedList = new List <Voucher> { offerVoucherA, offerVoucherB, giftVoucher }; _sut.Validate(new List <Product>(), mixedList); _validatorMock.Verify(v => v.Validate( It.IsAny <List <Product> >(), It.Is <List <OfferVoucher> >(list => list.Count == 2))); }