public void Processor_MissingCategory_FiltersAsDefault(LogLevel telemetryLevel, bool isEnabled)
        {
            var filter = new LoggerFilterOptions
            {
                MinLevel = LogLevel.Information
            };

            var processor = new FilteringTelemetryProcessor(filter, _nextTelemetryProcessorMock.Object);

            var telemetry = new TestTelemetry();

            telemetry.Properties[LogConstants.LogLevelKey] = telemetryLevel.ToString();
            // no category specified

            processor.Process(telemetry);

            if (isEnabled)
            {
                _nextTelemetryProcessorMock.Verify(m => m.Process(telemetry), Times.Once);
            }
            else
            {
                _nextTelemetryProcessorMock.Verify(m => m.Process(It.IsAny <ITelemetry>()), Times.Never);
            }
        }
        public void Processor_UsesFilter(LogLevel defaultLevel, LogLevel categoryLevel, LogLevel telemetryLevel, bool isEnabled)
        {
            var filter = new LoggerFilterOptions
            {
                MinLevel = defaultLevel
            };

            filter.AddFilter(LogCategories.Results, categoryLevel);

            var processor = new FilteringTelemetryProcessor(filter, _nextTelemetryProcessorMock.Object);

            var telemetry = new TestTelemetry();

            telemetry.Properties[LogConstants.CategoryNameKey] = LogCategories.Results;
            telemetry.Properties[LogConstants.LogLevelKey]     = telemetryLevel.ToString();

            processor.Process(telemetry);

            if (isEnabled)
            {
                _nextTelemetryProcessorMock.Verify(m => m.Process(telemetry), Times.Once);
            }
            else
            {
                _nextTelemetryProcessorMock.Verify(m => m.Process(It.IsAny <ITelemetry>()), Times.Never);
            }
        }
        public void Processor_MissingLogLevel_DoesNotFilter()
        {
            // If no loglevel, we're not sure what to do, so just let it through
            var filter = new LogCategoryFilter
            {
                DefaultLevel = LogLevel.Information
            };

            var processor = new FilteringTelemetryProcessor(filter.Filter, _nextTelemetryProcessorMock.Object);

            var telemetry = new TestTelemetry();

            telemetry.Properties[LogConstants.CategoryNameKey] = LogCategories.Results;
            // no log level specified

            processor.Process(telemetry);
            _nextTelemetryProcessorMock.Verify(m => m.Process(telemetry), Times.Once);
        }
        public void Processor_InvalidLogLevel_DoesNotFilter()
        {
            // If no valid loglevel, we're not sure what to do, so just let it through
            var filter = new LoggerFilterOptions
            {
                MinLevel = LogLevel.Information
            };

            var processor = new FilteringTelemetryProcessor(filter, _nextTelemetryProcessorMock.Object);

            var telemetry = new TestTelemetry();

            telemetry.Properties[LogConstants.CategoryNameKey] = LogCategories.Results;
            telemetry.Properties[LogConstants.LogLevelKey]     = "InvalidLevel";

            processor.Process(telemetry);
            _nextTelemetryProcessorMock.Verify(m => m.Process(telemetry), Times.Once);
        }
示例#5
0
        private void _uiUpdateTimer_Tick(object sender, EventArgs e)
        {
            TestTelemetry testTelemetry = _testController.GetCurrentTelemetry();

            SetTestArea(_testString);

            if (_clearEntryBox)
            {
                EntryBox.Clear();
                _clearEntryBox = false;
            }
            if (_mistakeMade)
            {
                EntryBox.SelectionStart  = EntryBox.Text.Length;
                EntryBox.SelectionLength = 0;
                _mistakeMade             = false;
            }

            SpeedLabel.Content = string.Format("{0} WPM", testTelemetry.WPM);
            TimeLabel.Content  = string.Format("{0}:{1}", testTelemetry.ElapsedTime.Minutes, testTelemetry.ElapsedTime.Seconds);
        }