private void Check(TypeModel model, SerializationContext ctx, int magicNumber, string caption) { try { CanHazFactory orig = new CanHazFactory {Foo = 123, Bar = 456}, clone; using(var ms = new MemoryStream()) { model.Serialize(ms, orig, ctx); ms.Position = 0; clone = (CanHazFactory) model.Deserialize(ms, null, typeof(CanHazFactory), ctx); } Assert.AreNotSame(orig, clone); Assert.AreEqual(123, orig.Foo, caption); Assert.AreEqual(456, orig.Bar, caption); Assert.AreEqual(0, orig.MagicNumber, caption); Assert.AreEqual(123, clone.Foo, caption); Assert.AreEqual(456, clone.Bar, caption); Assert.AreEqual(magicNumber, clone.MagicNumber, caption); } catch { Debug.WriteLine(caption); throw; } }
private void Check(TypeModel model, SerializationContext ctx, int magicNumber, string caption) { try { CanHazFactory orig = new CanHazFactory { Foo = 123, Bar = 456 }, clone; using (var ms = new MemoryStream()) { model.Serialize(ms, orig, ctx); ms.Position = 0; clone = (CanHazFactory)model.Deserialize(ms, null, typeof(CanHazFactory), ctx); } Assert.AreNotSame(orig, clone); Assert.AreEqual(123, orig.Foo, caption); Assert.AreEqual(456, orig.Bar, caption); Assert.AreEqual(0, orig.MagicNumber, caption); Assert.AreEqual(123, clone.Foo, caption); Assert.AreEqual(456, clone.Bar, caption); Assert.AreEqual(magicNumber, clone.MagicNumber, caption); } catch { Debug.WriteLine(caption); throw; } }