public void SetUp() { _eventScheduler = new EventSchedulerFake(); var eventSchedulerFactory = Substitute.For <IEventSchedulerFactory>(); eventSchedulerFactory.Create( Arg.Do <System.Action>(a => _eventScheduler.Callback = a)).Returns(_eventScheduler); _timer = new TimerFake(); _batchEventAggregator = new BatchEventAggregator <DebugEventBatch, DebugEventBatchParams, DebugEventBatchSummary >(_timeout, eventSchedulerFactory, _timer); _metrics = Substitute.For <IMetrics>(); _debugEventRecorder = new DebugEventRecorder(_batchEventAggregator, _metrics); }
public virtual void SetupStepTimeMetrics(List <IInterceptor> apiAspects, IMetrics metrics) { var schedulerFactory = new EventScheduler.Factory(); var timerFactory = new Timer.Factory(); var timer = timerFactory.Create(); var debugEventAggregator = new BatchEventAggregator <DebugEventBatch, DebugEventBatchParams, DebugEventBatchSummary>(_minimumDebugEventBatchSeparationInMillis, schedulerFactory, timer); var debugEventRecorder = new DebugEventRecorder(debugEventAggregator, metrics); var timeSource = GetTimeSource(); var metricsCollectionAspect = new MetricsCollectionAspect(debugEventRecorder, timeSource); apiAspects.Add(metricsCollectionAspect); }