public void ListOfSubObjects() { Assert.True(PropertyBasedSerializationSurrogate.CanHandle(typeDataCache, FudgeFieldNameConvention.Identity, typeof(ListOfObjectsClass))); var serializer = new FudgeSerializer(context); // We're relying on it auto-discovering the type surrogate var obj1 = new ListOfObjectsClass(); obj1.Subs.Add(new SimpleExampleClass { Name = "Bob", Age = 21 }); var msg = serializer.SerializeToMsg(obj1); var obj2 = (ListOfObjectsClass)serializer.Deserialize(msg); Assert.NotSame(obj1, obj2); Assert.NotSame(obj1.Subs[0], obj2.Subs[0]); Assert.Equal(obj1.Subs[0].Name, obj2.Subs[0].Name); }