public void Test()
        {
            var messageMock = new Mock <ISnmpMessage>();

            messageMock.Setup(foo => foo.Version).Returns(VersionCode.V3);
            var bindingMock = new Mock <IListenerBinding>();
            var context     = SnmpContextFactory.Create(messageMock.Object, new IPEndPoint(IPAddress.Loopback, 0), new UserRegistry(),
                                                        new EngineGroup(),
                                                        bindingMock.Object);

            context.SendResponse();
            bindingMock.Verify(foo => foo.SendResponse(It.IsAny <ISnmpMessage>(), It.IsAny <EndPoint>()), Times.AtMostOnce);
        }
        public void NoErrorNonRepeater1()
        {
            var handler = new GetBulkMessageHandler();
            var context = SnmpContextFactory.Create(
                new GetBulkRequestMessage(
                    300,
                    VersionCode.V2,
                    new OctetString("lextm"),
                    1,
                    2,
                    new List <Variable>
            {
                new Variable(new ObjectIdentifier("1.3.6.1.2.1.1.1.0")),
                new Variable(new ObjectIdentifier("1.3.6.1.2.1.1.3.0"))
            }
                    ),
                new IPEndPoint(IPAddress.Loopback, 100),
                new UserRegistry(),
                null,
                null);
            var store = new ObjectStore();

            store.Add(new SysDescr());
            store.Add(new SysObjectId());
            store.Add(new SysUpTime());
            store.Add(new SysContact());
            store.Add(new SysName());
            handler.Handle(context, store);
            var noerror = (ResponseMessage)context.Response;

            Assert.AreEqual(ErrorCode.NoError, noerror.ErrorStatus);
            Assert.AreEqual(new ObjectIdentifier("1.3.6.1.2.1.1.2.0"), noerror.Variables[0].Id);
            Assert.AreEqual(new ObjectIdentifier("1.3.6.1.2.1.1.4.0"), noerror.Variables[1].Id);
            Assert.AreEqual(new ObjectIdentifier("1.3.6.1.2.1.1.5.0"), noerror.Variables[2].Id);
            Assert.AreEqual(3, noerror.Variables.Count);
        }
        public void NotWritable()
        {
            var handler = new SetMessageHandler();
            var context = SnmpContextFactory.Create(
                new SetRequestMessage(
                    300,
                    VersionCode.V1,
                    new OctetString("lextm"),
                    new List <Variable>
            {
                new Variable(new ObjectIdentifier("1.3.6.1.2.1.1.4.0"), new OctetString("test"))
            }
                    ),
                new IPEndPoint(IPAddress.Loopback, 100),
                new UserRegistry(),
                null,
                null);
            var store = new ObjectStore();

            handler.Handle(context, store);
            var notWritable = (ResponseMessage)context.Response;

            Assert.Equal(ErrorCode.NotWritable, notWritable.ErrorStatus);
        }
Ejemplo n.º 4
0
        public void NoSuchInstance()
        {
            var handler = new GetMessageHandler();
            var context = SnmpContextFactory.Create(
                new GetRequestMessage(
                    300,
                    VersionCode.V1,
                    new OctetString("lextm"),
                    new List <Variable>
            {
                new Variable(new ObjectIdentifier("1.3.6.1.2.1.1.1.0"))
            }
                    ),
                new IPEndPoint(IPAddress.Loopback, 100),
                new UserRegistry(),
                null,
                null);
            var store = new ObjectStore();

            handler.Handle(context, store);
            var nosuchinstance = (ResponseMessage)context.Response;

            Assert.Equal(new NoSuchInstance(), nosuchinstance.Variables()[0].Data);
        }