public void TestAccumulator() { BackendMetrics.Accumulator accumulator = new BackendMetrics.Accumulator(); accumulator = accumulator.Accumulate(MockBackendMetrics); accumulator = accumulator.Accumulate(MockBackendMetrics); BackendMetrics backendMetricsFromAddition = BackendMetrics.Accumulator.ToBackendMetrics(accumulator); BackendMetrics expected = new BackendMetrics( retrievedDocumentCount * 2, retrievedDocumentSize * 2, outputDocumentCount * 2, outputDocumentSize * 2, indexHitRatio, totalExecutionTime * 2, new QueryPreparationTimes( queryCompileTime * 2, logicalPlanBuildTime * 2, physicalPlanBuildTime * 2, queryOptimizationTime * 2), indexLookupTime * 2, documentLoadTime * 2, vmExecutionTime * 2, new RuntimeExecutionTimes( (totalExecutionTime - systemFunctionExecuteTime - userFunctionExecuteTime) * 2, systemFunctionExecuteTime * 2, userFunctionExecuteTime * 2), documentWriteTime * 2); BackendMetricsTests.ValidateBackendMetricsEquals(expected, backendMetricsFromAddition); }
public Accumulator( BackendMetrics.Accumulator backendMetricsAccumulator, IndexUtilizationInfo.Accumulator indexUtilizationInfoAccumulator, ClientSideMetrics.Accumulator clientSideMetricsAccumulator) { this.BackendMetricsAccumulator = backendMetricsAccumulator; this.IndexUtilizationInfoAccumulator = indexUtilizationInfoAccumulator; this.ClientSideMetricsAccumulator = clientSideMetricsAccumulator; }