示例#1
0
 public NetworkStats(ILogger <NetworkStats> logger, IProcessNetworkStatistics processor, KongoOptions opts)
 {
     _logger     = logger;
     _httpClient = new HttpClient();
     _processor  = processor;
     _sb         = new StringBuilder();
     _opts       = opts;
 }
        public void InvalidNetworkStatistics_Throws_ArgumentException(string value)
        {
            var storage = new KongoDataStorage($"Data Source={Path.GetRandomFileName()}");

            storage.Database.EnsureCreated();
            _processor = new NetworkStatisticsProcessor(storage);
            storage.Database.EnsureDeleted();
            Assert.ThrowsAsync <ArgumentException>(() => _processor.ProcessNetworkStatistics(value));
        }
        public async Task ProcessValidNetworkStatisticsStreamAllNulls(string value)
        {
            var storage = new KongoDataStorage($"Data Source={Path.GetRandomFileName()}");

            storage.Database.EnsureCreated();
            _processor = new NetworkStatisticsProcessor(storage);
            var networkStats = await _processor.ProcessNetworkStatistics(value);

            storage.Database.EnsureDeleted();
            Assert.True(networkStats != null, "networkStats == null");
            Assert.True(networkStats.LastBlockReceivedAt == default(DateTimeOffset), $"LastBlockReceivedAt = {networkStats.LastFragmentReceivedAt}");
            Assert.True(networkStats.LastFragmentReceivedAt == default(DateTimeOffset), $"LastFragmentReceivedAt = {networkStats.LastFragmentReceivedAt}");
            Assert.True(networkStats.LastGossipReceivedAt == default(DateTimeOffset), $"LastGossipReceivedAt = {networkStats.LastGossipReceivedAt}");
            Assert.True(networkStats.TotalEstablishedConnections > 0, $"TotalEstablishedConnections = {networkStats.TotalEstablishedConnections}");
        }