private async Task HandleSpecificDomainEvent(MerchantFeeAddedToTransactionEvent domainEvent,
                                                     CancellationToken cancellationToken)
        {
            // Generate the settlement id from the date
            Guid settlementId = SettlementDomainEventHandler.GetSettlementId(domainEvent.SettlementDueDate);

            await this.EstateReportingRepository.AddSettledMerchantFeeToSettlement(settlementId, domainEvent, cancellationToken);
        }
        public void SettlementDomainEventHandler_MerchantFeeAddedToTransactionEvent_EventIsHandled()
        {
            MerchantFeeAddedToTransactionEvent domainEvent = TestData.MerchantFeeAddedToTransactionEvent;
            Mock <IEstateReportingRepository>  estateReportingRepository = new Mock <IEstateReportingRepository>();

            SettlementDomainEventHandler eventHandler = new SettlementDomainEventHandler(estateReportingRepository.Object);

            Logger.Initialise(NullLogger.Instance);

            Should.NotThrow(async() => { await eventHandler.Handle(domainEvent, CancellationToken.None); });
        }