コード例 #1
0
        public void MarshalSerializerTest()
        {
            var testClass = new ClassForTestsOfMarshalSerializer
            {
                B     = 1,
                UsBe  = 2,
                UsLe  = 3,
                SBe   = -3,
                SLe   = -4,
                UiBe  = 5,
                UiLe  = 6,
                IBe   = -7,
                ILe   = 8,
                UlBe  = 9,
                UlLe  = 10,
                LBe   = -11,
                LLe   = -12,
                FBe   = 1.2345f,
                FLe   = -2.3456f,
                DBe   = 3.4567,
                DLe   = -4.5678f,
                Array = new byte[64]
            };

            for (int i = 0; i < 64; i++)
            {
                testClass.Array[i] = (byte)i;
            }

            var buf = MarshalSerializer.RawSerialize(testClass);

            var deserializedObject = MarshalSerializer.RawDeserialize <ClassForTestsOfMarshalSerializer>(buf);

            Assert.AreEqual(testClass.B, deserializedObject.B);
            Assert.AreEqual(testClass.UsBe, deserializedObject.UsBe);
            Assert.AreEqual(testClass.UsLe, deserializedObject.UsLe);
            Assert.AreEqual(testClass.SBe, deserializedObject.SBe);
            Assert.AreEqual(testClass.SLe, deserializedObject.SLe);
            Assert.AreEqual(testClass.UiBe, deserializedObject.UiBe);
            Assert.AreEqual(testClass.UiLe, deserializedObject.UiLe);
            Assert.AreEqual(testClass.IBe, deserializedObject.IBe);
            Assert.AreEqual(testClass.ILe, deserializedObject.ILe);
            Assert.AreEqual(testClass.UlBe, deserializedObject.UlBe);
            Assert.AreEqual(testClass.UlLe, deserializedObject.UlLe);
            Assert.AreEqual(testClass.LBe, deserializedObject.LBe);
            Assert.AreEqual(testClass.LLe, deserializedObject.LLe);
            Assert.AreEqual(testClass.FBe, deserializedObject.FBe);
            Assert.AreEqual(testClass.FLe, deserializedObject.FLe);
            Assert.AreEqual(testClass.DBe, deserializedObject.DBe);
            Assert.AreEqual(testClass.DLe, deserializedObject.DLe);
            Assert.AreEqual(testClass.Array.Length, deserializedObject.Array.Length);

            for (int i = 0; i < 64; i++)
            {
                Assert.AreEqual(testClass.Array[i], deserializedObject.Array[i]);
            }
        }