/// <summary>
        /// The save.
        /// </summary>
        /// <param name="highVolume">
        /// The high volume.
        /// </param>
        public async Task SaveAsync(IHighVolumeJudgement highVolume)
        {
            if (highVolume == null)
            {
                this.logger?.LogError("High Volume Judgement was null");
            }

            await Task.CompletedTask;
        }
        /// <summary>
        /// The judgement for high volume - auto save as alert.
        /// </summary>
        /// <param name="highVolume">
        /// The high volume.
        /// </param>
        public async Task Judgement(IHighVolumeJudgement highVolume)
        {
            if (highVolume == null)
            {
                this.logger?.LogError("High Volume Judgement was null");
                return;
            }

            await this.judgementRepository.SaveAsync(highVolume);

            // judgement is also a rule breach
            var projectedBreach = (IHighVolumeRuleBreach)null;

            this.ruleViolationService.AddRuleViolation(projectedBreach);
        }
 public void Setup()
 {
     this.judgementRepository                       = A.Fake <IJudgementRepository>();
     this.highProfitJudgementContext                = A.Fake <IHighProfitJudgementContext>();
     this.cancelledOrderJudgementContext            = A.Fake <ICancelledOrderJudgement>();
     this.highVolumeJudgementContext                = A.Fake <IHighVolumeJudgement>();
     this.layeringJudgementContext                  = A.Fake <ILayeringJudgement>();
     this.placingOrdersWithNoIntentJudgementContext = A.Fake <IPlacingOrdersWithNoIntentToExecuteJudgement>();
     this.rampingJudgementContext                   = A.Fake <IRampingJudgement>();
     this.markingTheCloseJudgementContext           = A.Fake <IMarkingTheCloseJudgement>();
     this.spoofingJudgementContext                  = A.Fake <ISpoofingJudgement>();
     this.highProfitJudgementMapper                 = A.Fake <IHighProfitJudgementMapper>();
     this.fixedIncomeProfitJudgementMapper          = A.Fake <IFixedIncomeHighProfitJudgementMapper>();
     this.fixedIncomeProfitJudgementContext         = A.Fake <IFixedIncomeHighProfitJudgementContext>();
     this.fixedIncomeHighVolumeJudgementMapper      = A.Fake <IFixedIncomeHighVolumeJudgementMapper>();
     this.fixedIncomeHighVolumeJudgementContext     = A.Fake <IFixedIncomeHighVolumeJudgementContext>();
     this.ruleViolationService                      = A.Fake <IRuleViolationService>();
     this.logger = A.Fake <ILogger <JudgementService> >();
 }