Example #1
0
        public void TestOrderBy()
        {
            E.Test t = Assert.Single(Assert.ScriptCalled(_databaseFixture, Query.Select, () => _queryable.ToList().Where(x => x.Id == 1)));

            Assert.ScriptCalled(_databaseFixture, Query.OrderBy, () =>
                                Assert.Collection(_subQueryable.Where(x => x.Test == t).OrderBy(x => x.Second),
                                                  x => Assert.Equal(10, x.Id),
                                                  x => Assert.Equal(9, x.Id),
                                                  x => Assert.Equal(8, x.Id),
                                                  x => Assert.Equal(7, x.Id),
                                                  x => Assert.Equal(6, x.Id),
                                                  x => Assert.Equal(5, x.Id),
                                                  x => Assert.Equal(4, x.Id),
                                                  x => Assert.Equal(3, x.Id),
                                                  x => Assert.Equal(2, x.Id),
                                                  x => Assert.Equal(1, x.Id)));

            Assert.ScriptCalled(_databaseFixture, Query.OrderByDescending, () =>
                                Assert.Collection(_subQueryable.Where(x => x.Test == t).OrderByDescending(x => x.Second),
                                                  x => Assert.Equal(1, x.Id),
                                                  x => Assert.Equal(2, x.Id),
                                                  x => Assert.Equal(3, x.Id),
                                                  x => Assert.Equal(4, x.Id),
                                                  x => Assert.Equal(5, x.Id),
                                                  x => Assert.Equal(6, x.Id),
                                                  x => Assert.Equal(7, x.Id),
                                                  x => Assert.Equal(8, x.Id),
                                                  x => Assert.Equal(9, x.Id),
                                                  x => Assert.Equal(10, x.Id)));
        }
Example #2
0
        public void TestForeignObjectExpression(Query query, Func <IQueryable <E.SubTest>, E.Test, IQueryable <E.SubTest> > function, string queryPattern, IEnumerable <object[]> values)
        {
            _output.WriteLine($"Test {query} expression");

            E.Test t = Assert.Single(Assert.ScriptCalled(_databaseFixture, Query.Select, () => _queryable.ToList().Where(x => x.Id == 1)));

            List <E.SubTest> subResult = Assert.ScriptCalled(_databaseFixture, query, () => function(_subQueryable, t).ToList());

            Assert.Equal(values.Count(), subResult.Count);
            _output.WriteLine("... Done");
        }
Example #3
0
        public void TestDeleteSingle()
        {
            E.Test entity = Assert.ScriptCalled(_databaseFixture, Query.Select, () => Assert.Single(_queryable.ToList().Where(x => x.Id == 1)));

            // Quick fix to prevent the test to run in to issue #14 problem, needs to be removed in the future.
            entity.SubTests.ToList().Select(x => x.Test).ToList();

            IQueryable <E.Test> queryable = _databaseFixture.ObjectProvider.GetQueryable <E.Test>().Where(x => x == entity);

            queryable.Delete();

            Assert.ScriptCalled(_databaseFixture, Query.Delete, () => queryable.Save());
        }