public void Can_clone_DtoWithDictionary() { var expected = new DtoWithDictionary() { Lookup = new Dictionary<string, Simple>() { {"foo",new Simple(){Id = 1}}, {"bar",new Simple(){Id = 2}}, } }; var clone = Incubator.Clone(expected); Assert.AreNotSame(expected, clone); Assert.AreNotSame(expected.Lookup, clone.Lookup); Assert.AreEqual(expected.Lookup.Keys.OrderBy(x => x).ToArray(), clone.Lookup.Keys.OrderBy(x => x).ToArray()); Assert.AreNotSame(expected.Lookup["foo"], clone.Lookup["foo"]); Assert.AreEqual(expected.Lookup["foo"].Id, clone.Lookup["foo"].Id); }
public void Can_clone_DtoWithDictionary() { var expected = new DtoWithDictionary() { Lookup = new Dictionary <string, Simple>() { { "foo", new Simple() { Id = 1 } }, { "bar", new Simple() { Id = 2 } }, } }; var clone = Incubator.Clone(expected); Assert.AreNotSame(expected, clone); Assert.AreNotSame(expected.Lookup, clone.Lookup); Assert.AreEqual(expected.Lookup.Keys.OrderBy(x => x).ToArray(), clone.Lookup.Keys.OrderBy(x => x).ToArray()); Assert.AreNotSame(expected.Lookup["foo"], clone.Lookup["foo"]); Assert.AreEqual(expected.Lookup["foo"].Id, clone.Lookup["foo"].Id); }