public void BasicTestOfAllAggregationTypes()
        {
            var x = new Nisse
            {
                List1 = new List <int> {
                    5, 6, 7
                },
                List2 = new List <int> {
                    7, 15, 18, 20
                },
            };

            var export = new DataExtract <Nisse>(_spec);

            export.Run(x);

            var t = export.TableManager.GetWithAllData().First();

            CollectionAssert.AreEqual(new object[]
            {
                5 + 6,
                15 + 18 + 20,
                5 + 6,
                15 + 18 + 20,
                6,
                20,
                5,
                15,
                LinkedFieldInfo.CoherseType(typeof(int), (5 + 6) / 2.0),
                LinkedFieldInfo.CoherseType(typeof(int), (15 + 18 + 20) / 3.0),
                2,
                3
            }, t.Rows.Single().Columns);
        }
Exemple #2
0
        public void TestCohersionViaFromStruct()
        {
            var result1 = lfiS1.CoherseType(42.1);

            Assert.AreEqual("Double", result1.GetType().Name);
            Assert.AreEqual(42.1, (double)result1, 1E-10);

            var result2 = lfiS2.CoherseType(41.8);

            Assert.AreEqual("Int32", result2.GetType().Name);
            Assert.AreEqual(42, result2);

            var result3 = lfiS3.CoherseType(41.2);

            Assert.AreEqual("String", result3.GetType().Name);
            Assert.AreEqual("41.2", result3);

            var result4 = lfiS4.CoherseType("67.7");

            Assert.AreEqual("Double", result4.GetType().Name);
            Assert.AreEqual(67.7, (double)result4, 1E-10);
        }