public void CopyFields_DynamicRow_To_Amorphous_NotIncludeAmorphous() { var schema = Schema.GetForTypedRow(typeof(Person)); var from = new DynamicRow(schema); from["FirstName"] = "Ivan"; from["Amount"] = 10; from["DOB"] = new DateTime(1990, 2, 16); from["GoodPerson"] = true; var to = new AmorphousDynamicRow(Schema.GetForTypedRow(typeof(Empty))); to.AmorphousData["field1"] = 123; to.AmorphousData["FirstName"] = "John"; from.CopyFields(to, false); Assert.AreEqual(0, to.Schema.FieldCount); Assert.AreEqual(2, to.AmorphousData.Count); Assert.AreEqual(123, to.AmorphousData["field1"]); Assert.AreEqual("John", to.AmorphousData["FirstName"]); }
public void CopyFields_ExtendedDynamicRow_To_DynamicRow() { var schema = Schema.GetForTypedRow(typeof(Person)); var fieldDefs = schema.FieldDefs.ToList(); fieldDefs.Add(new Schema.FieldDef("Info", typeof(string), new QuerySource.ColumnDef("Info"))); fieldDefs.Add(new Schema.FieldDef("Count", typeof(long), new QuerySource.ColumnDef("Info"))); var extendedSchema = new Schema("sname", fieldDefs.ToArray()); var from = new DynamicRow(extendedSchema); from["FirstName"] = "Ivan"; from["Amount"] = 10; from["DOB"] = new DateTime(1990, 2, 16); from["GoodPerson"] = true; from["Info"] = "extended info"; from["Count"] = long.MaxValue; var to = new DynamicRow(schema); from.CopyFields(to); Assert.AreEqual(to["FirstName"], from["FirstName"]); Assert.AreEqual(to["Amount"], from["Amount"]); Assert.AreEqual(to["DOB"], from["DOB"]); Assert.AreEqual(to["GoodPerson"], from["GoodPerson"]); }
public void CopyFields_DynamicRow() { var from = new DynamicRow(Schema.GetForTypedRow(typeof(Person))); from["FirstName"] = "Ivan"; from["LastName"] = "Petrov"; from["Amount"] = 10; from["Classification"] = "class1"; from["Description"] = null; from["DOB"] = new DateTime(1990, 2, 16); from["GoodPerson"] = true; from["ID"] = "abc"; from["LuckRatio"] = 12345.6789D; from["YearsInSpace"] = 20; from["YearsWithCompany"] = null; 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["LastName"], from["LastName"]); Assert.AreEqual(to["Amount"], from["Amount"]); Assert.AreEqual(to["Classification"], from["Classification"]); Assert.AreEqual(to["Description"], from["Description"]); Assert.AreEqual(to["DOB"], from["DOB"]); Assert.AreEqual(to["GoodPerson"], from["GoodPerson"]); Assert.AreEqual(to["ID"], from["ID"]); Assert.AreEqual(to["LuckRatio"], from["LuckRatio"]); Assert.AreEqual(to["YearsInSpace"], from["YearsInSpace"]); Assert.AreEqual(to["YearsWithCompany"], from["YearsWithCompany"]); }