示例#1
0
        public async Task UbiquitiResponseFilteringTest()
        {
            // Arrange
            var sntpServiceMock = new Mock <ISnmpService>();
            Dictionary <Oid, AsnType> mockResponse = new Dictionary <Oid, AsnType>
            {
                { new Oid("1.3.6.1.4.1.41112.1.4.1.1.6.1"), new Integer32(161) },
                { new Oid("1.3.6.1.4.1.41112.1.4.1.1.4.1"), new Integer32(141) },
                { new Oid("1.3.6.1.4.1.41112.1.4.1.1.4.22"), new Integer32(99322) },
                { new Oid("1.3.6.1.4.1.41112.1.4.1.1.4.24"), new Integer32(41241) }
            };

            var filterDict = new Dictionary <string, PhysicalProperty>
            {
                { "1.3.6.1.4.1.41112.1.4.1.1.6.1", new PhysicalProperty {
                      Magnitude = "signalPower", Unit = "dBm"
                  } },
                { "1.3.6.1.4.1.41112.1.4.1.1.4.1", new PhysicalProperty {
                      Magnitude = "frequency", Unit = "MHz"
                  } },
            };

            var ubi = new UbiquitiStatsProvider(sntpServiceMock.Object, filterDict);

            sntpServiceMock.Setup(x => x.Walk(It.IsAny <SnmpVersion>(), It.IsAny <string>())).Returns(mockResponse);


            // Act
            var stats = await ubi.GetStatsAsync(CancellationToken.None);


            // Assert
            Assert.Equal(2, stats.Count);
            Assert.True(stats.First().Key.Equals("signalPower"));
            Assert.Contains("161 [dBm]", stats.First().Value);
        }
示例#2
0
 public UbiquitiPollerHostedService(ILifetimeScope autofac) : base(autofac)
 {
     _ubiProvider = Autofac.Resolve <UbiquitiStatsProvider>();
 }