static TypingTimingMetadata TimeAction(Action action) { var timings = new TextEditorKeyPressTimings(null); var telemetry = IdeServices.DesktopService.PlatformTelemetry; if (telemetry == null) { Assert.Ignore("Platform does not implement telemetry details"); } timings.StartTimer(telemetry.TimeSinceMachineStart); action(); timings.EndTimer(); return(timings.GetTypingTimingMetadata(null, null, 0, 0)); }
public void TestSimpleTimer() { var timings = new TextEditorKeyPressTimings(null); var telemetry = DesktopService.PlatformTelemetry; if (telemetry == null) { Assert.Ignore("Platform does not implement telemetry details"); } var time = (long)telemetry.TimeSinceMachineStart.TotalMilliseconds; timings.StartTimer(time); Thread.Sleep(800); timings.EndTimer(); var metadata = timings.GetTypingTimingMetadata(null, null, 0, 0); Assert.That(metadata.First, Is.GreaterThanOrEqualTo(800.0)); Assert.That(metadata.First, Is.LessThanOrEqualTo(1600)); }