public void ReturnsResultsOrderDescendingByIndex() { IOrdering <FooEntity> orderingById = new FooOrderByDescendingId(); IEnumerable <FooEntity> tenFooEntities = this.GivenAFooEntitiesWithRandomId(10); FakeDbSet <FooEntity> fooDbSet = new FakeDbSet <FooEntity>(tenFooEntities); Mock <FakeDatabase> database = FakeDatabase.CreateMockOfFakeDatabase(fooDbSet); BaseRepository <FooEntity> baseRepository = this.GivenABaseRepositoryWithDatabase(database.Object); IEnumerable <FooEntity> results = baseRepository.GetAll(new Query <FooEntity>(null, null, orderingById)); CollectionAssert.AreEqual(tenFooEntities.OrderByDescending(i => i.Id).ToList(), results.ToList()); }
public void ReturnsAllResultsOfLastPage() { Pagination lastPageThreeResults = new Pagination(4, 3); IEnumerable <FooEntity> tenFooEntities = this.GivenAFooEntities(10); FakeDbSet <FooEntity> fooDbSet = new FakeDbSet <FooEntity>(tenFooEntities); Mock <FakeDatabase> database = FakeDatabase.CreateMockOfFakeDatabase(fooDbSet); BaseRepository <FooEntity> baseRepository = this.GivenABaseRepositoryWithDatabase(database.Object); IEnumerable <FooEntity> results = baseRepository.GetAll(new Query <FooEntity>(null, lastPageThreeResults, null)); CollectionAssert.AreEqual(tenFooEntities.Skip(9).Take(1).ToList(), results.ToList()); }
public void ReturnsPaginatedList() { Pagination firstPageThreeResults = new Pagination(1, 3); IEnumerable <FooEntity> tenFooEntities = this.GivenAFooEntities(10); FakeDbSet <FooEntity> fooDbSet = new FakeDbSet <FooEntity>(tenFooEntities); Mock <FakeDatabase> database = FakeDatabase.CreateMockOfFakeDatabase(fooDbSet); BaseRepository <FooEntity> baseRepository = this.GivenABaseRepositoryWithDatabase(database.Object); IPagedList <FooEntity> pageResults = baseRepository.GetPage(new Query <FooEntity>(null, firstPageThreeResults, null)); CollectionAssert.AreEqual(tenFooEntities.Take(3).ToList(), pageResults.ToList()); }
public void ReturnStoriesWithLanguage() { Story storyEs = new StoryBuilder().WithLanguage(Languages.es).WithContent("dummy"); Story storyEn = new StoryBuilder().WithLanguage(Languages.en).WithContent("dummy"); FakeDbSet <Story> storyDbSet = new FakeDbSet <Story>() { storyEs, storyEn }; Mock <FakeDatabase> database = FakeDatabase.CreateMockOfFakeDatabase(storyDbSet); StoryRepository.StoryRepository storyRepository = this.GivenAStoryRepositoryWithDatabase(database.Object); IEnumerable <Story> stories = storyRepository.GetWithText("dummy", "en", new Pagination(1, 10), new StoryOrderByDate()).ToList(); Assert.AreEqual(1, stories.Count()); Assert.AreEqual(storyEn, stories.FirstOrDefault()); }
public void ReturnStoriesWithTextInTitle() { Story storyTitle1 = new StoryBuilder().WithTitle("Title 1"); Story storyTitle2 = new StoryBuilder().WithTitle("Title 2"); FakeDbSet <Story> storyDbSet = new FakeDbSet <Story>() { storyTitle1, storyTitle2 }; Mock <FakeDatabase> database = FakeDatabase.CreateMockOfFakeDatabase(storyDbSet); StoryRepository.StoryRepository storyRepository = this.GivenAStoryRepositoryWithDatabase(database.Object); IEnumerable <Story> stories = storyRepository.GetWithText("Title 1", null, new Pagination(1, 10), new StoryOrderByDate()).ToList(); Assert.AreEqual(1, stories.Count()); Assert.AreEqual(storyTitle1, stories.FirstOrDefault()); }
public void ReturnsResultsWithSpecText() { ISpecification <FooEntity> barTextSpecification = new FooWithBarSpec("bar text dummy"); FooEntity fooCorrectText = this.GivenAFooEntityWithBarText("bar text dummy"); FooEntity fooNoCorrectText = this.GivenAFooEntityWithBarText("other dummy"); FooEntity fooNoCorrectText2 = this.GivenAFooEntityWithBarText("other dummy 2"); FakeDbSet <FooEntity> fooDbSet = new FakeDbSet <FooEntity>() { fooCorrectText, fooNoCorrectText, fooNoCorrectText2 }; Mock <FakeDatabase> database = FakeDatabase.CreateMockOfFakeDatabase(fooDbSet); BaseRepository <FooEntity> baseRepository = this.GivenABaseRepositoryWithDatabase(database.Object); IEnumerable <FooEntity> results = baseRepository.GetAll(new Query <FooEntity>(barTextSpecification, null, null)); Assert.AreEqual(1, results.Count()); Assert.AreEqual(fooCorrectText, results.FirstOrDefault()); }
public void ReturnLastestStoriesWithLanguage() { Story yesterdayStory = new StoryBuilder().WithPublishDate(DateTime.Now.AddDays(-1)); Story todayStory = new StoryBuilder().WithPublishDate(DateTime.Now); Story dayBeforeYesterdayStory = new StoryBuilder().WithPublishDate(DateTime.Now.AddDays(-2)); Story storyWithDifferentLanguage = new StoryBuilder().WithLanguage(Languages.en).WithPublishDate(DateTime.Now); FakeDbSet <Story> storyDbSet = new FakeDbSet <Story>() { dayBeforeYesterdayStory, todayStory, yesterdayStory }; Mock <FakeDatabase> database = FakeDatabase.CreateMockOfFakeDatabase(storyDbSet); StoryRepository.StoryRepository storyRepository = this.GivenAStoryRepositoryWithDatabase(database.Object); IList <Story> stories = storyRepository.GetLastestStories(null, new Pagination(1, 10)).ToList(); Assert.AreEqual(3, stories.Count()); Assert.AreEqual(todayStory, stories[0]); Assert.AreEqual(yesterdayStory, stories[1]); Assert.AreEqual(dayBeforeYesterdayStory, stories[2]); }