예제 #1
0
        public void TestMpackBrowseRequestWriteRead()
        {
            // Arrange
            var request = new BrowseRequest {
                Flags  = 0,
                Handle = new Reference(),
                Item   = new ProxySocketAddress {
                    Flags = 1,
                    Port  = 1,
                    Host  = ""
                },
                Type = BrowseRequest.Service
            };
            var stream = new MemoryStream();

            // Act
            request.Encode(stream, CodecId.Mpack);

            byte[] buf      = Interop.TypeDecodeEncode(CodecId.Mpack, BrowseRequestType, stream.GetBuffer(), stream.Length, buffer, buffer.Length);
            var    returned = Serializable.Decode <BrowseRequest>(new MemoryStream(buf), CodecId.Mpack);

            // Assert
            Assert.IsTrue(request.Equals(returned));
        }