Exemplo n.º 1
0
        public void TestOrderByOverwrite()
        {
            using (var localContext = new MockDbContext(this.options))
            {
                localContext.Add(new Entity {
                    Id = 1, Name = "za"
                });
                localContext.Add(new Entity {
                    Id = 2, Name = "za"
                });
                localContext.Add(new Entity {
                    Id = 3, Name = "aa"
                });
                localContext.SaveChanges();
            }

            var result = this.context.Entities
                         .OrderBy(e => e.Name)
                         .ThenBy(e => e.Id)
                         .OrderByDescending(e => e.Name)
                         .ThenByDescending(e => e.Id)
                         .ToList();

            Assert.Equal(result.Select(e => e.Id), new[] { 2, 1, 3 });
        }
        public void TestExistingCase()
        {
            const int id       = 1;
            var       provider = new GenericFilterExpressionProvider <Entity, int>(
                i => new FilterExpressionDictionary <Entity>().AddEquals(e => e.Id == i),
                new FilterToIntegerConverter(new CultureInfoConversionPriorityCollection()));
            var expression = provider.Resolve(FilterType.Equals, id.ToString());

            using (var context = new MockDbContext())
            {
                context.Add(new Entity {
                    Id = id
                });
                context.SaveChanges();
                Assert.Equal(1, context.Entities.Count(expression));
            }
        }