コード例 #1
0
        public void Constructor_ValuesInitialized()
        {
            var uut = new Rreq();

            Assert.AreEqual(MessageType.Rreq, uut.Type);
            Assert.AreEqual(24, uut.Size);
        }
コード例 #2
0
        public void CopyConstructor_ValuesInitialized()
        {
            var rreq = new Rreq();
            var uut  = new Rreq(rreq);

            Assert.AreEqual(rreq.Size, uut.Size);
            Assert.AreEqual(rreq.Type, uut.Type);
            Assert.AreEqual(rreq.J, uut.J);
            Assert.AreEqual(rreq.R, uut.R);
            Assert.AreEqual(rreq.G, uut.G);
            Assert.AreEqual(rreq.D, uut.D);
            Assert.AreEqual(rreq.U, uut.U);
            Assert.AreEqual(rreq.HopCount, uut.HopCount);
            Assert.AreEqual(rreq.RouteRequestId, uut.RouteRequestId);
            Assert.AreEqual(rreq.DestinationAddress, uut.DestinationAddress);
            Assert.AreEqual(rreq.DestinationSequenceNumber, uut.DestinationSequenceNumber);
            Assert.AreEqual(rreq.OriginatorAddress, uut.OriginatorAddress);
            Assert.AreEqual(rreq.OriginatorSequenceNumber, uut.OriginatorSequenceNumber);
        }
コード例 #3
0
        public Message(Message msg) //Copy constructor
        {
            DestinationAddress = msg.DestinationAddress;
            PreviousHop        = msg.PreviousHop;
            SourceAddress      = msg.SourceAddress;
            Ttl      = msg.Ttl;
            HopCount = msg.HopCount;

            switch (msg.Type)
            {
            case MessageType.Rreq:
                var rreq = (Rreq)msg.Payload;
                Payload = new Rreq(rreq);
                break;

            case MessageType.Rrep:
                var rrep = (Rrep)msg.Payload;
                Payload = new Rrep(rrep);
                break;

            case MessageType.Rerr:
                var rerr = (Rerr)msg.Payload;
                Payload = new Rerr(rerr);
                break;

            case MessageType.Rrepack:
                var rrepack = (Rrepack)msg.Payload;
                Payload = new Rrepack(rrepack);
                break;

            case MessageType.Data:
                var data = (DataMsg)msg.Payload;
                Payload = new DataMsg(data);
                break;

            case MessageType.Hello:
                var hello = (Hello)msg.Payload;
                Payload = new Hello(hello);
                break;
            }

            TotalPropagationDelay = msg.TotalPropagationDelay;
        }
コード例 #4
0
        public void Constructor_ValuesInitialized()
        {
            var attemptNo = 1337;
            var expire    = 1000;

            var destination = "Destination";
            var originator  = "Originator";
            var rreqId      = 1338;

            var rreq = new Rreq();

            rreq.DestinationAddress = destination;
            rreq.OriginatorAddress  = originator;
            rreq.RouteRequestId     = rreqId;


            var uut = new BufferedRreqAttempt(attemptNo, rreq, expire);

            Assert.AreEqual(destination, uut.DestinationAddress);
            Assert.AreEqual(originator, uut.OriginatorAddress);
            Assert.AreEqual(attemptNo, uut.AttemptNo);
            Assert.AreEqual(0, uut.RetryNo);
            Assert.AreEqual(rreqId, uut.RouteRequestId);
        }