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 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]);
        }