public void CalledWithNoDataDoesNotThrow()
        {
            // Arrange
            var repositoryViews = new InMemoryQueryRepository(FamilyTestData.GetData());


            // Act
            var entity1 = repositoryViews.GetEntities<Person>(
                new OrderByQueryStrategy(PersonIncludes.SortValue));

            var entity2 = repositoryViews.GetEntities<Person>(
                new OrderByDescendingQueryStrategy(PersonIncludes.SortValue));

            var entity3 = repositoryViews.GetEntities<Person>(
                new AggregateQueryStrategy(
                    new OrderByQueryStrategy(PersonIncludes.SortValue),
                    new ThenByQueryStrategy(PersonIncludes.Id)));

            var entity4 = repositoryViews.GetEntities<Person>(
                new AggregateQueryStrategy(
                    new OrderByDescendingQueryStrategy(PersonIncludes.SortValue),
                    new OrderByDescendingQueryStrategy(PersonIncludes.Id)));

            // Assert
            entity1.First().SortValue.ShouldEqual("A");
            entity2.First().SortValue.ShouldEqual("Z");
            entity3.First().SortValue.ShouldEqual("A");
            entity4.First().SortValue.ShouldEqual("J");
        }
        public void CalledWithNoDataDoesNotThrow()
        {
            // Arrange
            var repositoryViews = new InMemoryQueryRepository(FamilyTestData.GetData());


            // Act
            var entity1 = repositoryViews.GetEntities <Person>(
                new OrderByQueryStrategy(PersonIncludes.SortValue));

            var entity2 = repositoryViews.GetEntities <Person>(
                new OrderByDescendingQueryStrategy(PersonIncludes.SortValue));

            var entity3 = repositoryViews.GetEntities <Person>(
                new AggregateQueryStrategy(
                    new OrderByQueryStrategy(PersonIncludes.SortValue),
                    new ThenByQueryStrategy(PersonIncludes.Id)));

            var entity4 = repositoryViews.GetEntities <Person>(
                new AggregateQueryStrategy(
                    new OrderByDescendingQueryStrategy(PersonIncludes.SortValue),
                    new OrderByDescendingQueryStrategy(PersonIncludes.Id)));

            // Assert
            entity1.First().SortValue.ShouldEqual("A");
            entity2.First().SortValue.ShouldEqual("Z");
            entity3.First().SortValue.ShouldEqual("A");
            entity4.First().SortValue.ShouldEqual("J");
        }
        public void OrderByWithSecondParamterTest()
        {
            // Arrange
            var repositoryViews = new InMemoryQueryRepository(FamilyTestData.GetData());

            // Act
            var entities = repositoryViews.GetEntities<Person>(new OrderByQueryStrategy(PersonIncludes.Title, PersonIncludes.SortValue));
        }
        public void OrderByDescendingWithSecondParamterTest()
        {
            // Arrange
            var repositoryViews = new InMemoryQueryRepository(FamilyTestData.GetData());

            // Act
            var entities = repositoryViews.GetEntities <Person>(new OrderByQueryStrategy(PersonIncludes.SortValue));
        }
        public void OrderByTest()
        {
            var repository = new InMemoryQueryRepository(FamilyTestData.GetData());
            var entities = repository.GetEntities<Person>(
                new OrderByQueryStrategy<Person>(p => p.SortValue));

            entities.First().SortValue.ShouldEqual("A");
            entities.Last().SortValue.ShouldEqual("Z");
       }
        public void OrderByTest()
        {
            var repository = new InMemoryQueryRepository(FamilyTestData.GetData());
            var entities   = repository.GetEntities <Person>(
                new OrderByQueryStrategy <Person>(p => p.SortValue));

            entities.First().SortValue.ShouldEqual("A");
            entities.Last().SortValue.ShouldEqual("Z");
        }
        public void OrderByTest2()
        {
            // Arrange
            var repositoryViews = new InMemoryQueryRepository(FamilyTestData.GetData());

            // Act
            var entities = repositoryViews.GetEntities<Person>(
                new OrderByQueryStrategy<Person>(p => p.SortValue));

            // Assert
            Assert.IsTrue(entities.First().SortValue == "A");
            Assert.IsTrue(entities.Last().SortValue == "Z");
        }
        public void OrderByTest2()
        {
            // Arrange
            var repositoryViews = new InMemoryQueryRepository(FamilyTestData.GetData());

            // Act
            var entities = repositoryViews.GetEntities <Person>(
                new OrderByQueryStrategy <Person>(p => p.SortValue));

            // Assert
            Assert.IsTrue(entities.First().SortValue == "A");
            Assert.IsTrue(entities.Last().SortValue == "Z");
        }
        public void OrderByDescendingTest()
        {
            // Arrange
            var repositoryViews = new InMemoryQueryRepository(FamilyTestData.GetData());

            // Act
            var entities = repositoryViews.GetEntities<Person>(new OrderByQueryStrategy(PersonIncludes.SortValue));
        }