Exemple #1
0
        public void ReadNestedObjectTest()
        {
            SampleClass expected = new SampleClass();

            expected.m_int       = 0;
            expected.m_byte      = 1;
            expected.m_longarray = new List <long>()
            {
                1, -2
            };
            expected.m_string = "test";
            expected.m_obj    = null;

            byte[]      buffer = new byte[] { 0x00, 0x01, 0x02, 0x02, 0x03, 0x04, 0x74, 0x65, 0x73, 0x74, 0x0D };
            SampleClass actual = new SampleClass();

            actual.Deserialize(new BinaryReader(buffer, DeserializationHelper.CannedVersion));

            Assert.AreEqual <SampleClass>(expected, actual);

            expected.m_obj = new InnerClass()
            {
                m_bool = true, m_double = 0.1, m_float = 150
            };
            List <byte> lb = new List <byte> {
                0x00, 0x01, 0x02, 0x02, 0x03, 0x04, 0x74, 0x65, 0x73, 0x74, 0x05
            };

            lb.AddRange(BitConverter.GetBytes(expected.m_obj.m_float));
            lb.AddRange(BitConverter.GetBytes(expected.m_obj.m_double));
            lb.Add((byte)0xD);
            actual.Deserialize(new BinaryReader(lb.ToArray(), DeserializationHelper.CannedVersion));

            Assert.AreEqual <SampleClass>(expected, actual);
        }
Exemple #2
0
        public void NestedObjectTest()
        {
            SampleClass expected = new SampleClass();

            expected.m_int       = 0;
            expected.m_byte      = 1;
            expected.m_longarray = new List <long>()
            {
                1, -2
            };
            expected.m_string = "test";
            expected.m_obj    = new InnerClass()
            {
                m_bool = true, m_double = 0.1, m_float = 150
            };

            System.IO.MemoryStream stream = new System.IO.MemoryStream();
            BinaryWriter           writer = new BinaryWriter(stream, RoundtripTest.CannedVersion);

            expected.Serialize(writer);

            stream.Seek(0L, System.IO.SeekOrigin.Begin);

            BinaryReader reader = new BinaryReader(stream, RoundtripTest.CannedVersion);

            SampleClass actual = new SampleClass();

            actual.Deserialize(reader);

            Assert.AreEqual <SampleClass>(expected, actual);
        }