Пример #1
0
        INngMsg MsgRandom()
        {
            var msg = factory.CreateMessage();

            msg.Append(Guid.NewGuid().ToByteArray());
            return(msg);
        }
Пример #2
0
        public void Creation(string url)
        {
            using (var listenSocket = factory.PairOpen().ThenListenAs(out var listener, url).Unwrap())
                using (var dialerSocket = factory.PairOpen().ThenDial(GetDialUrl(listener, url)).Unwrap())
                {
                    listenSocket.SetOpt(nng.Native.Defines.NNG_OPT_SENDTIMEO, new nng_duration {
                        TimeMs = 50
                    });
                    dialerSocket.SetOpt(nng.Native.Defines.NNG_OPT_SENDTIMEO, new nng_duration {
                        TimeMs = 50
                    });

                    dialerSocket.SendMsg(factory.CreateMessage());
                    var msg = listenSocket.RecvMsg().Unwrap();
                    Assert.True(msg.Pipe.IsValid());
                    //Assert.True(msg.Pipe.Socket.IsValid());
                    Assert.False(msg.Pipe.Dialer.IsValid());
                    Assert.True(msg.Pipe.Listener.IsValid());

                    listenSocket.SendMsg(factory.CreateMessage());
                    msg = dialerSocket.RecvMsg().Unwrap();
                    Assert.True(msg.Pipe.IsValid());
                    //Assert.True(msg.Pipe.Socket.IsValid());
                    Assert.True(msg.Pipe.Dialer.IsValid());
                    Assert.False(msg.Pipe.Listener.IsValid());
                }
        }
Пример #3
0
        IMessage MsgRandom()
        {
            var bytes0 = Guid.NewGuid().ToByteArray();
            var bytes1 = Guid.NewGuid().ToByteArray();
            var msg    = factory.CreateMessage();

            msg.Append(bytes0);
            msg.Header.Append(bytes1);
            return(msg);
        }
Пример #4
0
        public void Creation()
        {
            var        randomHeader = randomBytes();
            var        randomBody   = randomBytes();
            const uint anInt        = 0x01234567;

            var builder = new MsgBuilder().AddRange(randomBody).Add(anInt);

            builder.Header.AddRange(randomHeader);
            var msgBuffers = builder.Build();
            var msg        = factory.CreateMessage();

            msg.Header.Append(randomHeader);
            msg.Append(randomBody);
            msg.Append(anInt);

            // Builder creates same message as native nng functions
            Assert.True(Util.Equals(msg, msgBuffers.ToMessage(factory)));
            // Create another identical message
            Assert.True(Util.Equals(msg, msgBuffers.ToMessage(factory)));
            // Rebuilding buffers create identical messages
            msgBuffers = builder.Build();
            Assert.True(Util.Equals(msg, msgBuffers.ToMessage(factory)));
        }