Ejemplo n.º 1
0
        public void Test_Untyped()
        {
            var rnd    = new Random();
            var record = new TestRecord
            {
                Id              = Guid.NewGuid().ToString(),
                Integer         = DateTime.UtcNow.Millisecond,
                Floating        = rnd.NextDouble(),
                EnumeratedValue = MyEnum.Val2,
                TextValues      =
                {
                    rnd.Next().ToString(),
                    rnd.Next().ToString(),
                    rnd.Next().ToString(),
                    rnd.Next().ToString()
                }
            };

            byte[] bytes;   // serialize to bytes
            var    ser = new ProtobufSerializer();

            bytes = ser.Serialize(record, default);

            TestRecord testing; // back to object
            var        deSer = new ProtobufDeserializer <TestRecord>();

            testing = deSer.Deserialize(bytes, false, default);

            Assert.AreEqual(record.Id, testing.Id);
            Assert.AreEqual(record.Integer, testing.Integer);
            Assert.AreEqual(record.Floating, testing.Floating);
            Assert.AreEqual(record.EnumeratedValue, testing.EnumeratedValue);

            Assert.AreEqual(record.TextValues.Count, testing.TextValues.Count);
            for (int i = 0; i < record.TextValues.Count; i++)
            {
                Assert.AreEqual(record.TextValues[i], testing.TextValues[i]);
            }
        }