Exemplo n.º 1
0
        public void CorrectSerializeConvertCountRef()
        {
            var foo = new RefObjects();

            foo._ref = new RefObject("1111");
            foo._refVector.Add(new RefObject("2222"));
            foo._refVector.Add(new RefObject("3333"));
            foo._refList.AddLast(new RefObject("4444"));
            foo._refList.AddLast(new RefObject("5555"));
            foo._refList.AddLast(new RefObject("6666"));

            foo._refMap.Add(1, new RefObject("7777"));
            foo._refMap.Add(2, new RefObject("8888"));
            foo._refMap.Add(3, new RefObject("9999"));

            foo._refNullable = new RefObject("10010");

            foo._refRequired         = new RefObject("11011");
            foo._refRequiredOptional = new RefObject("12012");

            var output     = new OutputBuffer();
            var writer     = new CompactBinaryWriter <OutputBuffer>(output);
            var serializer = new Serializer <CompactBinaryWriter <OutputBuffer> >(typeof(RefObjects));

            serializer.Serialize(foo, writer);

            Assert.AreEqual(foo.CountInstances(), BondTypeAliasConverter.ConvertFromRefObjectCount);
            Assert.AreEqual(0, BondTypeAliasConverter.ConvertToRefObjectCount);
        }
Exemplo n.º 2
0
        public void CorrectRoundtripConvertCountRef()
        {
            var foo = new RefObjects();

            foo._ref = new RefObject("1111");
            foo._refVector.Add(new RefObject("2222"));
            foo._refVector.Add(new RefObject("3333"));
            foo._refList.AddLast(new RefObject("4444"));
            foo._refList.AddLast(new RefObject("5555"));
            foo._refList.AddLast(new RefObject("6666"));

            foo._refMap.Add(1, new RefObject("7777"));
            foo._refMap.Add(2, new RefObject("8888"));
            foo._refMap.Add(3, new RefObject("9999"));

            foo._refNullable = new RefObject("10010");

            foo._refRequired         = new RefObject("11011");
            foo._refRequiredOptional = new RefObject("12012");

            var output     = new OutputBuffer();
            var writer     = new CompactBinaryWriter <OutputBuffer>(output);
            var serializer = new Serializer <CompactBinaryWriter <OutputBuffer> >(typeof(RefObjects));

            serializer.Serialize(foo, writer);

            var input        = new InputBuffer(output.Data);
            var reader       = new CompactBinaryReader <InputBuffer>(input);
            var deserializer = new Deserializer <CompactBinaryReader <InputBuffer> >(typeof(RefObjects));
            var foo2         = deserializer.Deserialize <RefObjects>(reader);

            Assert.AreEqual(foo.CountInstances(), BondTypeAliasConverter.ConvertFromRefObjectCount);
            Assert.AreEqual(foo2.CountInstances(), BondTypeAliasConverter.ConvertToRefObjectCount);
            Assert.AreEqual(foo.CountInstances(), foo2.CountInstances());
            Assert.IsTrue(Bond.Comparer.Equal(foo, foo2));
        }