public void Verify_probe_na()
        {
            var knowledgeBaseProvider = _services.GetService <IKnowledgeBaseProvider>();
            var probe = new HighConnectionCreationRateProbe(null, knowledgeBaseProvider);

            BrokerConnectivitySnapshot snapshot = GetSnapshot(99, 100);

            var result = probe.Execute(snapshot);

            Assert.AreEqual(ProbeResultStatus.NA, result.Status);
        }
        public void Verify_probe_na()
        {
            var knowledgeBaseProvider = _provider.GetService <IKnowledgeBaseProvider>();
            var probe = new HighConnectionCreationRateProbe(null, knowledgeBaseProvider);

            BrokerConnectivitySnapshot snapshot = new FakeBrokerConnectivitySnapshot2(99, 100);

            var result = probe.Execute(snapshot);

            result.Status.ShouldBe(ProbeResultStatus.NA);
        }
        public void Verify_probe_healthy_condition()
        {
            var knowledgeBaseProvider = _provider.GetService <IKnowledgeBaseProvider>();
            var config = _provider.GetService <HareDuConfig>();
            var probe  = new HighConnectionCreationRateProbe(config.Diagnostics, knowledgeBaseProvider);

            BrokerConnectivitySnapshot snapshot = new FakeBrokerConnectivitySnapshot2(99, 100);

            var result = probe.Execute(snapshot);

            result.Status.ShouldBe(ProbeResultStatus.Healthy);
            result.KB.Id.ShouldBe(typeof(HighConnectionCreationRateProbe).GetIdentifier());
        }
        public void Verify_probe_healthy_condition()
        {
            HareDuConfig config = new () { Diagnostics = new () { Probes = new () { HighConnectionCreationRateThreshold = 100 } } };
            var          knowledgeBaseProvider = _services.GetService <IKnowledgeBaseProvider>();
            var          probe = new HighConnectionCreationRateProbe(config.Diagnostics, knowledgeBaseProvider);

            BrokerConnectivitySnapshot snapshot = GetSnapshot(99, 100);

            var result = probe.Execute(snapshot);

            Assert.Multiple(() =>
            {
                Assert.AreEqual(ProbeResultStatus.Healthy, result.Status);
                Assert.AreEqual(typeof(HighConnectionCreationRateProbe).GetIdentifier(), result.KB.Id);
            });
        }