Пример #1
0
        public void Sensor_methods_are_invoked_per_Read_call()
        {
            var first  = DiagnosticSensor.DiscoverSensors().Single(s => s.Name == "CounterSensor").Read().Result;
            var second = DiagnosticSensor.DiscoverSensors().Single(s => s.Name == "CounterSensor").Read().Result;

            first.Should().NotBe(second);
        }
Пример #2
0
        public void When_sensor_throws_an_exception_then_the_exception_is_returned()
        {
            var result = DiagnosticSensor.DiscoverSensors()
                         .Single(s => s.Name == "ExceptionSensor")
                         .Read()
                         .Result
                         .Exception;

            result.Should().BeOfType <DataMisalignedException>();
        }
Пример #3
0
        public static IServiceCollection AddPeakySensors(
            this IServiceCollection builder,
            AuthorizeSensors authorize = null,
            string baseUri             = "sensors")
        {
            if (builder == null)
            {
                throw new ArgumentNullException(nameof(builder));
            }

            authorize = authorize ?? (_ =>
            {
            });

            builder.TryAddSingleton(authorize);

            builder.TryAddSingleton(c => new SensorRegistry(DiagnosticSensor.DiscoverSensors()));

            return(builder);
        }
Пример #4
0
        public void Sensors_can_be_queried_based_on_return_type()
        {
            var sensors = DiagnosticSensor.DiscoverSensors().Where(s => s.ReturnType == typeof(FileInfo));

            sensors.Should().HaveCount(1);
        }
Пример #5
0
        public void Sensor_info_can_be_queried_based_on_sensor_declaring_type()
        {
            var sensors = DiagnosticSensor.DiscoverSensors().Where(s => s.DeclaringType == typeof(TestSensors));

            sensors.Count().Should().BeGreaterOrEqualTo(2);
        }
Пример #6
0
        public void Sensor_methods_can_be_instance_methods()
        {
            var sensors = DiagnosticSensor.DiscoverSensors().Where(s => s.DeclaringType == typeof(TestSensors));

            sensors.Count().Should().BeGreaterOrEqualTo(1);
        }
Пример #7
0
        public void Sensor_methods_can_be_private()
        {
            var sensors = DiagnosticSensor.DiscoverSensors().Where(s => s.Name == "PrivateSensor");

            sensors.Should().HaveCount(1);
        }
Пример #8
0
        public void Sensor_methods_can_be_internal()
        {
            var sensors = DiagnosticSensor.DiscoverSensors().Where(s => s.Name == "InternalSensor");

            sensors.Should().HaveCount(1);
        }
Пример #9
0
        public void Sensors_can_be_queried_based_on_sensor_name()
        {
            var sensors = DiagnosticSensor.DiscoverSensors().Where(s => s.Name == "DictionarySensor");

            sensors.Should().HaveCount(1);
        }