public void WhenTheEventIsReceivedItIsEvaluated(AddPremiumData eventData) { var target = new AddPremiumEvaluator(); var view = new EventEngine.Policies.Application.Views.PolicyView.ViewData.Policy(); target.Evaluate(view, null, eventData); Assert.NotNull(view.Premiums); Assert.Equal(eventData.PremiumSpread.Count, view.Premiums.Count); foreach (var premiumSpread in eventData.PremiumSpread) { Assert.Contains(view.Premiums, x => x.Amount == premiumSpread.Value.Amount && x.Id == premiumSpread.Value.Id && x.FundId == premiumSpread.Key && x.Status == PremiumSpread.Statuses.Awaiting && x.PremiumId == eventData.PremiumId); } }
private static void ValidateAddPremium(AddPremiumCommand addPremiumCommand, AddPremiumData data) { data.PremiumSpread.Should().BeEquivalentTo(addPremiumCommand.PremiumSpread); }