コード例 #1
0
        public void Verify_empty_result_returned_when_snapshot_null()
        {
            BrokerQueuesSnapshot snapshot = null;

            var result = new BrokerQueuesScanner(_probes)
                         .Scan(snapshot);

            Assert.IsEmpty(result);
        }
コード例 #2
0
        public void Verify_empty_result_returned_when_snapshot_null()
        {
            BrokerQueuesSnapshot snapshot = null;

            var result = new BrokerQueuesScanner(_probes)
                         .Scan(snapshot);

            result.ShouldBeEmpty();
        }
コード例 #3
0
        public ProbeResult Execute <T>(T snapshot)
        {
            ProbeResult          result;
            BrokerQueuesSnapshot data = snapshot as BrokerQueuesSnapshot;

            var probeData = new List <ProbeData>
            {
                new ProbeDataImpl("Churn.NotRouted.Total", data.Churn.NotRouted.Total.ToString())
            };

            if (data.Churn.NotRouted.Total > 0)
            {
                _kb.TryGet(Metadata.Id, ProbeResultStatus.Unhealthy, out var article);
                result = new UnhealthyProbeResult(data.ClusterName,
                                                  null,
                                                  Metadata.Id,
                                                  Metadata.Name,
                                                  ComponentType,
                                                  probeData,
                                                  article);
            }
            else
            {
                _kb.TryGet(Metadata.Id, ProbeResultStatus.Healthy, out var article);
                result = new HealthyProbeResult(data.ClusterName,
                                                null,
                                                Metadata.Id,
                                                Metadata.Name,
                                                ComponentType,
                                                probeData,
                                                article);
            }

            NotifyObservers(result);

            return(result);
        }