public void Setup()
        {
            this._uploadConfiguration  = A.Fake <IUploadConfiguration>();
            this._systemProcessContext = A.Fake <ISystemProcessContext>();
            this._reddeerDirectory     = A.Fake <IReddeerDirectory>();

            this._fileProcessor                  = A.Fake <IAllocationFileProcessor>();
            this._allocationRepository           = A.Fake <IOrderAllocationRepository>();
            this._fileUploadAllocationRepository = A.Fake <IFileUploadOrderAllocationRepository>();
            this._coordinatorMessageSender       = A.Fake <IUploadCoordinatorMessageSender>();
            this._logger = A.Fake <ILogger <AllocationFileMonitor> >();
        }
 public AllocationFileMonitor(
     IAllocationFileProcessor fileProcessor,
     ISystemProcessContext systemProcessContext,
     IUploadConfiguration uploadConfiguration,
     IReddeerDirectory directory,
     IOrderAllocationRepository repository,
     IFileUploadOrderAllocationRepository fileUploadRepository,
     IUploadCoordinatorMessageSender messageSender,
     ILogger <AllocationFileMonitor> logger)
     : base(directory, logger, "Allocation File Monitor")
 {
     this._allocationFileProcessor = fileProcessor ?? throw new ArgumentNullException(nameof(fileProcessor));
     this._systemProcessContext    =
         systemProcessContext ?? throw new ArgumentNullException(nameof(systemProcessContext));
     this._uploadConfiguration =
         uploadConfiguration ?? throw new ArgumentNullException(nameof(uploadConfiguration));
     this._allocationRepository = repository ?? throw new ArgumentNullException(nameof(repository));
     this._fileUploadRepository =
         fileUploadRepository ?? throw new ArgumentNullException(nameof(fileUploadRepository));
     this._messageSender = messageSender ?? throw new ArgumentNullException(nameof(messageSender));
 }