Exemplo n.º 1
0
        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));
        }