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); Aver.AreEqual(3, to.AmorphousData.Count); Aver.AreObjectsEqual(from.AmorphousData["field1"], to.AmorphousData["field1"]); Aver.AreObjectsEqual(from.AmorphousData["field2"], to.AmorphousData["field2"]); Aver.AreObjectsEqual(1.2D, to.AmorphousData["field3"]); }
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); Aver.AreObjectsEqual(to["FirstName"], from["FirstName"]); Aver.AreObjectsEqual(to["LuckRatio"], from["LuckRatio"]); Aver.AreObjectsEqual(to["Description"], from["Description"]); Aver.AreObjectsEqual(to["YearsWithCompany"], from["YearsWithCompany"]); Aver.AreObjectsEqual(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); Aver.AreObjectsEqual(to["FirstName"], from["FirstName"]); Aver.AreObjectsEqual(to["LuckRatio"], from["LuckRatio"]); Aver.AreObjectsEqual(to["YearsInSpace"], from["YearsInSpace"]); Aver.AreObjectsEqual(null, to.Schema["field1"]); Aver.AreEqual(0, to.AmorphousData.Count); }
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"); Aver.AreEqual(4, to.AmorphousData.Count); Aver.AreObjectsEqual(from.AmorphousData["field1"], to.AmorphousData["field1"]); Aver.AreObjectsEqual("234", to.AmorphousData["field2"]); Aver.AreObjectsEqual(to.AmorphousData["field3"], to.AmorphousData["field3"]); Aver.AreObjectsEqual(12345, to.AmorphousData["field4"]); }
public void CopyFields_AmorphousDynamicRow_To_TypedRow() { var from = new AmorphousDynamicRow(Schema.GetForTypedRow(typeof(Person))); from["FirstName"] = "Ivan"; from["LuckRatio"] = 12345.6789D; from.AmorphousData["field1"] = "some data"; var to = new Person { FirstName = "Jack", Description = "descr", YearsWithCompany = 30 }; from.CopyFields(to); Assert.AreEqual(to["FirstName"], from["FirstName"]); Assert.AreEqual(to["LuckRatio"], from["LuckRatio"]); Assert.AreEqual(to["YearsWithCompany"], from["YearsWithCompany"]); Assert.AreEqual(null, to.Schema["field1"]); }