Exemplo n.º 1
0
        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"]);
        }
Exemplo n.º 2
0
        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"]);
        }
Exemplo n.º 3
0
        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"]);
        }
Exemplo n.º 4
0
        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);
        }