예제 #1
0
        public void WhereValue()
        {
            IEnumerable <int> source = TestData.GetInts();
            IEnumerable <int> result = source.Query <int>("SELECT * FROM this WHERE value() > 3");

            Assert.IsTrue(result.SequenceEqual(source.Where(i => i > 3)));
        }
예제 #2
0
        public void Count()
        {
            IEnumerable <int> source = TestData.GetInts();
            int result = source.QueryScalar <int>("SELECT count(*) FROM this");

            Assert.IsTrue(result == source.Count());
        }
예제 #3
0
        public void Sum()
        {
            IEnumerable <int> source = TestData.GetInts();
            int result = source.QueryScalar <int>("SELECT sum(value()) FROM this");

            Assert.IsTrue(result == source.Sum());
        }
예제 #4
0
        public void AvgInt()
        {
            IEnumerable <int> source = TestData.GetInts();
            double            result = source.QueryScalar <int, double>("SELECT avg(value()) FROM this");

            Assert.IsTrue(result == source.Average());
        }
예제 #5
0
        public void CountDistinctValue()
        {
            IEnumerable <int> source = TestData.GetInts();
            int result = source.QueryScalar <int>("SELECT count(DISTINCT value()) FROM this");

            Assert.IsTrue(result == source.Distinct().Count());
        }
예제 #6
0
        public void CountWhere()
        {
            IEnumerable <int> source = TestData.GetInts();
            int result = source.QueryScalar <int>("SELECT count(*) FROM this WHERE value() > 3");

            Assert.IsTrue(result == source.Where(i => i > 3).Count());
        }
예제 #7
0
        public void ZeroEvaluautesAsFalseInWhereClause()
        {
            IEnumerable <int> source = TestData.GetInts();
            var result = source.Query <int>("SELECT * FROM this WHERE 2 - 2");

            Assert.IsTrue(result.Any() == false);
        }
예제 #8
0
        public void EmbeddedFalseInWhereClause()
        {
            IEnumerable <int> source = TestData.GetInts();
            var result = source.Query <int>("SELECT * FROM this WHERE value() > 3 AND FALSE");

            Assert.IsTrue(result.Any() == false);
        }
예제 #9
0
        public void StdevPInt()
        {
            IEnumerable <int> source = TestData.GetInts();

            double result = source.QueryScalar <int, double>("SELECT StdevP(value()) FROM this");

            Assert.AreEqual(result, source.StandardDeviationP(), TestData.Epsilon);
        }
예제 #10
0
        public void NonZeroEvaluautesAsTrueInWhereClause()
        {
            IEnumerable <int> source = TestData.GetInts();
            var result = source.Query <int>("SELECT * FROM this WHERE 2 + 3");

            Assert.IsTrue(result.Any());
            Assert.IsTrue(source.SequenceEqual(result));
        }
예제 #11
0
        public void VarPInt()
        {
            IEnumerable <int> source = TestData.GetInts();

            double result = source.QueryScalar <int, double>("SELECT varp(value()) FROM this");

            Assert.AreEqual(result, source.VarianceP(), TestData.Epsilon);
        }
예제 #12
0
        public void EmbeddedTrueInWhereClause()
        {
            IEnumerable <int> source = TestData.GetInts();
            var result = source.Query <int>("SELECT * FROM this WHERE value() > 3 AND TRUE");
            var answer = source.Where(i => i > 3);

            Assert.IsTrue(result.Any());
            Assert.IsTrue(answer.SequenceEqual(result));
        }
예제 #13
0
        public void NestedExpressions()
        {
            IEnumerable <int> source = TestData.GetInts();
            var result = source.Query <int>("SELECT * FROM this WHERE value() = ((6 / 2) + 1 - 2)");
            var answer = source.Where(i => i == ((6 / 2) + 1 - 2));

            Assert.IsTrue(result.Any());
            Assert.IsTrue(answer.SequenceEqual(result));
        }
예제 #14
0
        public void WhereIntInValue()
        {
            IEnumerable <int> source = TestData.GetInts();
            var result = source.Query <int>("SELECT * FROM this WHERE value() IN(2, 3)");

            Assert.IsTrue(result.Any());
            foreach (int i in result)
            {
                Assert.IsTrue(i == 2 || i == 3);
            }
        }