public void CopyFields_AmorphousDynamicRow_IncludeAmorphous() { var from = new AmorphousDynamicRow(Schema.GetForTypedRow(typeof(Empty))); from.AmorphousData["field1"] = "some data"; from.AmorphousData["field2"] = 123; var to = new AmorphousDynamicRow(Schema.GetForTypedRow(typeof(Empty))); to.AmorphousData["field2"] = "234"; to.AmorphousData["field3"] = 1.2D; from.CopyFields(to, true); Assert.AreEqual(3, to.AmorphousData.Count); Assert.AreEqual(from.AmorphousData["field1"], to.AmorphousData["field1"]); Assert.AreEqual(from.AmorphousData["field2"], to.AmorphousData["field2"]); Assert.AreEqual(1.2D, to.AmorphousData["field3"]); }
public void CopyFields_AmorphousDynamicRow_Filter() { var from = new AmorphousDynamicRow(Schema.GetForTypedRow(typeof(Empty))); from.AmorphousData["field1"] = "some data"; from.AmorphousData["field2"] = 123; from.AmorphousData["field3"] = "info"; var to = new AmorphousDynamicRow(Schema.GetForTypedRow(typeof(Empty))); to.AmorphousData["field2"] = "234"; to.AmorphousData["field3"] = 1.2D; to.AmorphousData["field4"] = 12345; from.CopyFields(to, true, false, null, (s, n) => n != "field2" ); Assert.AreEqual(4, to.AmorphousData.Count); Assert.AreEqual(from.AmorphousData["field1"], to.AmorphousData["field1"]); Assert.AreEqual("234", to.AmorphousData["field2"]); Assert.AreEqual(to.AmorphousData["field3"], to.AmorphousData["field3"]); Assert.AreEqual(12345, to.AmorphousData["field4"]); }
public void CopyFields_AmorphousDynamicRow_To_DynamicRow() { var from = new AmorphousDynamicRow(Schema.GetForTypedRow(typeof(Person))); from["FirstName"] = "Ivan"; from["LuckRatio"] = 12345.6789D; from.AmorphousData["field1"] = "some data"; var to = new DynamicRow(Schema.GetForTypedRow(typeof(Person))); to["Description"] = "descr"; to["YearsWithCompany"] = 30; from.CopyFields(to); Assert.AreEqual(to["FirstName"], from["FirstName"]); Assert.AreEqual(to["LuckRatio"], from["LuckRatio"]); Assert.AreEqual(to["Description"], from["Description"]); Assert.AreEqual(to["YearsWithCompany"], from["YearsWithCompany"]); Assert.AreEqual(null, to.Schema["field1"]); }
public void CopyFields_AmorphousDynamicRow_NotIncludeAmorphous() { var from = new AmorphousDynamicRow(Schema.GetForTypedRow(typeof(Person))); from["FirstName"] = "Ivan"; from["LuckRatio"] = 12345.6789D; from.AmorphousData["field1"] = "some data"; var to = new AmorphousDynamicRow(Schema.GetForTypedRow(typeof(Person))); from["FirstName"] = "Jack"; from["YearsInSpace"] = 20; from.CopyFields(to, false); Assert.AreEqual(to["FirstName"], from["FirstName"]); Assert.AreEqual(to["LuckRatio"], from["LuckRatio"]); Assert.AreEqual(to["YearsInSpace"], from["YearsInSpace"]); Assert.AreEqual(null, to.Schema["field1"]); Assert.AreEqual(0, to.AmorphousData.Count); }