예제 #1
0
        public void TestCorrectFormat2(string inputString, int fieldA, int fieldB, int somePropertyField, string fieldVal)
        {
            var stringSerializer         = new StringSerializer();
            var secondSerializableObject = new SecondSerializableClass(fieldA, fieldB, somePropertyField, fieldVal);

            Assert.AreEqual(inputString, stringSerializer.Serialize(secondSerializableObject));
        }
예제 #2
0
        public void DeserializeTest1(int fieldA, int fieldB, int somePropertyField, string value)
        {
            var stringSerializer = new StringSerializer();
            var sourceObject     = new SecondSerializableClass(fieldA, fieldB, somePropertyField, value);

            var resultObject = (SecondSerializableClass)stringSerializer.Deserialize(stringSerializer.Serialize(sourceObject));

            Assert.AreEqual(fieldA, resultObject.FieldA);
            Assert.AreEqual(0, resultObject.FieldB);
            Assert.AreEqual(value, resultObject.FieldValue);
            Assert.AreEqual(somePropertyField, resultObject.SomeProperty);
        }
예제 #3
0
        public void ComplexArraysDeserizalizeTest()
        {
            var stringSerializer = new StringSerializer();
            var sourceObject     = new SecondSerializableClass
            {
                FieldA       = 5,
                FieldValue   = "qwe",
                SomeProperty = 9,
                Array1       = new[]
                {
                    0.0f,
                    1.0f,
                    2.0f,
                    3.0f,
                    4.0f,
                    5.0f
                },
                SomeClasses = new[]
                {
                    new SecondSerializableClass
                    {
                        FieldA       = 5,
                        FieldValue   = "qwe",
                        SomeProperty = 9
                    },
                    new SecondSerializableClass
                    {
                        FieldA       = 5,
                        FieldValue   = "qwe",
                        SomeProperty = 9
                    }
                }
            };
            var serializedString = stringSerializer.Serialize(sourceObject);

            var resultObject = (SecondSerializableClass)stringSerializer.Deserialize(stringSerializer.Serialize(sourceObject));

            Assert.IsTrue(sourceObject.FieldA.Equals(resultObject.FieldA));
            Assert.IsTrue(sourceObject.FieldB.Equals(resultObject.FieldB));
            Assert.IsTrue(sourceObject.Array1.SequenceEqual(resultObject.Array1));
            Assert.IsTrue(sourceObject.SomeClasses.SequenceEqual(resultObject.SomeClasses));
        }
예제 #4
0
        public void ComplexDeserializeTest()
        {
            var stringSerializer = new StringSerializer();
            var sourceObject     = new SecondSerializableClass
            {
                FieldA       = 5,
                FieldB       = 6,
                SomeProperty = 9,
                FieldC       = new SecondSerializableClass
                {
                    FieldA     = 10,
                    FieldB     = 11,
                    FieldValue = "Andrey",
                    FieldC     = new SecondSerializableClass
                    {
                        FieldA       = 15,
                        FieldB       = 16,
                        SomeProperty = 21,
                        FieldC       = new SecondSerializableClass
                        {
                            FieldA       = 15,
                            FieldB       = 16,
                            SomeProperty = 21,
                            FieldValue   = "Anton"
                        },
                        FieldValue = "Yuri"
                    },
                    SomeProperty = 15
                },
                FieldValue = "Sergey"
            };

            var resultObject = (SecondSerializableClass)stringSerializer.Deserialize(stringSerializer.Serialize(sourceObject));

            Assert.IsTrue(sourceObject.Equals(resultObject));
        }