public void CanChainDelayAndTiming() { var svc = new MyService(); Func<ResponseOne> opOneFunc = () => svc.OperationThree("Bozo"); //Using delay and Timing together var opOneResponse = opOneFunc.WithTiming().WithDelay(TimeSpan.FromSeconds(1))(); Assert.IsNotNull(opOneResponse.Item1); var svc2 = new MyService(); Func<ResponseTwo> opTwoFunc = () => svc2.OperationTwo(true); //Using delay and Timing together var opTwoResponse = opTwoFunc.WithDelay(TimeSpan.FromSeconds(1)).WithTiming()(); Assert.IsNotNull(opTwoResponse.Item1); }
public void CanAddMeasurementResults() { var svc = new MyService(); var result = new MyMeasurementResults(); using (new PerformanceMeasurement(result, MeasurementName.ResponseOne)) { svc.OperationOne("Bozo"); } using (new PerformanceMeasurement(result, MeasurementName.ResponseTwo)) { svc.OperationTwo(true); } Assert.IsNotNull(result.GetMeasurement(MeasurementName.ResponseOne)); Assert.IsNotNull(result.GetMeasurement(MeasurementName.ResponseTwo)); Assert.AreEqual(result.GetAllMeasurements().Count, 2); }