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); }
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)); }