Exemplo n.º 1
0
        public void CopyFields_AmorphousDynamicRow_IncludeAmorphous()
        {
            var from = new AmorphousDynamicDoc(Schema.GetForTypedDoc(typeof(Empty)));

            from.AmorphousData["field1"] = "some data";
            from.AmorphousData["field2"] = 123;

            var to = new AmorphousDynamicDoc(Schema.GetForTypedDoc(typeof(Empty)));

            to.AmorphousData["field2"] = "234";
            to.AmorphousData["field3"] = 1.2D;

            from.CopyFields(to, includeAmorphousData: 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"]);
        }
Exemplo n.º 2
0
        public void CopyFields_AmorphousDynamicRow_NotIncludeAmorphous()
        {
            var from = new AmorphousDynamicDoc(Schema.GetForTypedDoc(typeof(Person)));

            from["FirstName"]            = "Ivan";
            from["LuckRatio"]            = 12345.6789D;
            from.AmorphousData["field1"] = "some data";

            var to = new AmorphousDynamicDoc(Schema.GetForTypedDoc(typeof(Person)));

            from["FirstName"]    = "Jack";
            from["YearsInSpace"] = 20;

            from.CopyFields(to, includeAmorphousData: 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);
        }
Exemplo n.º 3
0
        public void CopyFields_AmorphousDynamicRow_To_DynamicRow()
        {
            var from = new AmorphousDynamicDoc(Schema.GetForTypedDoc(typeof(Person)));

            from["FirstName"]            = "Ivan";
            from["LuckRatio"]            = 12345.6789D;
            from.AmorphousData["field1"] = "some data";

            var to = new DynamicDoc(Schema.GetForTypedDoc(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"]);
        }
Exemplo n.º 4
0
        public void CopyFields_AmorphousDynamicRow_Filter()
        {
            var from = new AmorphousDynamicDoc(Schema.GetForTypedDoc(typeof(Empty)));

            from.AmorphousData["field1"] = "some data";
            from.AmorphousData["field2"] = 123;
            from.AmorphousData["field3"] = "info";

            var to = new AmorphousDynamicDoc(Schema.GetForTypedDoc(typeof(Empty)));

            to.AmorphousData["field2"] = "234";
            to.AmorphousData["field3"] = 1.2D;
            to.AmorphousData["field4"] = 12345;

            from.CopyFields(to, null, 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"]);
        }