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);
 }