Пример #1
0
        public void GetDetails_ShouldThrow_IfStoryNotExist()
        {
            var userRepoBuilder = new GoUserRepositoryBuilder();
            var userRepo        = userRepoBuilder
                                  .WithAll()
                                  .Build();

            var storiesRepoBuilder = new StoriesRepositoryBuilder();
            var storiesRepo        = storiesRepoBuilder
                                     .WithAll()
                                     .Build();

            var UserStoriesRepoBuilder = new PeopleStoriesRepositoryBuilder();
            var userStoriesRepo        = UserStoriesRepoBuilder
                                         .WithAll()
                                         .Build();

            var sut = new StoriesService(storiesRepo, null, userStoriesRepo, userRepo, Mapper);

            var ex = Assert.Throws <ArgumentException>(() => sut.GetDetails("17"));

            Assert.Equal("Story not exist!", ex.Message);
        }
Пример #2
0
        public void GetDetails_ShouldReturnCorrect_StoryViewModel()
        {
            var userRepoBuilder = new GoUserRepositoryBuilder();
            var userRepo        = userRepoBuilder
                                  .WithAll()
                                  .Build();

            var storiesRepoBuilder = new StoriesRepositoryBuilder();
            var storiesRepo        = storiesRepoBuilder
                                     .WithAll()
                                     .Build();

            var UserStoriesRepoBuilder = new PeopleStoriesRepositoryBuilder();
            var userStoriesRepo        = UserStoriesRepoBuilder
                                         .WithAll()
                                         .Build();

            var sut = new StoriesService(storiesRepo, null, userStoriesRepo, userRepo, Mapper);

            var actual = sut.GetDetails("7");

            var peopleStories = userStoriesRepo.All().Where(x => x.StoryId == "7").Select(x => Mapper.Map <StoryViewModel>(x.Story)).ToList();

            var author = userRepo.All().FirstOrDefault(x => x.Id == "8");

            var expected = new StoryViewModel
            {
                Id                 = "7",
                DestinationId      = "2",
                AuthorId           = "8",
                Author             = author.FirstName,
                Title              = "Mrun",
                PeopleWhosLikeThis = peopleStories.Count()
            };

            Assert.Equal(expected, actual, new StoriesViewModelComparer());
        }