Blog.Logic.Core.Tests.PostsLogicTest.ShouldGetPostsByTag C# (CSharp) Method

ShouldGetPostsByTag() private method

private ShouldGetPostsByTag ( ) : void
return void
        public void ShouldGetPostsByTag()
        {
            var post = _posts.FirstOrDefault(a => a.PostId == 1);
            _postRepository = new Mock<IPostRepository>();
            _postRepository.Setup(a => a.GetPostsByTag(It.IsAny<string>(), It.IsAny<int>()))
                .Returns(new List<Post> { post });

            var postContents = _postContents.Where(a => a.PostId == 1).ToList();
            _postContentRepository = new Mock<IPostContentRepository>();
            _postContentRepository.Setup(a => a.Find(It.IsAny<Expression<Func<PostContent, bool>>>(), true))
                .Returns(postContents);

            _mediaRepository = new Mock<IMediaRepository>();
            _mediaRepository.Setup(a => a.Find(It.IsAny<Expression<Func<Media, bool>>>(), false))
                .Returns(new List<Media> { new Media { MediaId = 1 } });

            _postsLogic = new PostsLogic(_postRepository.Object, _postContentRepository.Object,
                _mediaRepository.Object);

            var result = _postsLogic.GetPostsByTag("lorem");

            Assert.AreEqual(1, result.Count);
            Assert.AreEqual("lorem", result[0].Tags[0].TagName.ToLower());
        }
PostsLogicTest