Пример #1
0
        public void GetUserByPostIdShouldWorkCorrectly()
        {
            var posts = new List <Post>();

            var mockPostRepo = new Mock <IDeletableEntityRepository <Post> >();

            mockPostRepo.Setup(x => x.All()).Returns(posts.AsQueryable());
            mockPostRepo.Setup(x => x.AddAsync(It.IsAny <Post>())).Callback((Post post) => posts.Add(post));

            var service = new PostsService(null, mockPostRepo.Object);

            var post = new Post
            {
                Id       = "1",
                UserId   = "1",
                Content  = "Test",
                Title    = "Test",
                SentById = "1",
            };

            posts.Add(post);
            var userId         = service.GetPostById("1");
            var expectedOutput = "1";

            Assert.Equal(expectedOutput, userId);
        }
Пример #2
0
        public void _Return_Correct_Instance(int id)
        {
            //Arrange
            var mockedPost = new Mock <Post>();

            var mockedPostRepository = new Mock <IRepository <Post> >();

            mockedPostRepository.Setup(r => r.GetById(It.IsAny <object>())).Returns(mockedPost.Object);

            var mockedUserService      = new Mock <IUserService>();
            var mockedUnitOfWork       = new Mock <IUnitOfWork>();
            var mockedPostFactory      = new Mock <IPostFactory>();
            var mockedCategoryService  = new Mock <ICategoryService>();
            var mockedDateTimeProvider = new Mock <IDateTimeProvider>();

            var postService = new PostsService(
                mockedPostRepository.Object,
                mockedUserService.Object,
                mockedUnitOfWork.Object,
                mockedPostFactory.Object,
                mockedCategoryService.Object,
                mockedDateTimeProvider.Object);

            //Act
            var res = postService.GetPostById(id);

            //Assert
            Assert.IsInstanceOf <Post>(res);
        }
Пример #3
0
        public async Task LikePost(int postId, string userName, string password)
        {
            var user = await _userService.GetUserIfValid(new NameAndPassword(userName, password));

            var post = await _postsService.GetPostById(postId);

            _postsService.AddUserToPostLikes(post, user);
            _notificationsService.NotifyPostLiked(post, user);
        }
Пример #4
0
        public async Task <ActionResult> Details(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            var post = await _postsServicio.GetPostById(id.Value);

            if (post == null)

            {
                return(HttpNotFound());
            }

            var viewModel = new PostDetailsViewModel(post);

            return(View(viewModel));
        }
Пример #5
0
        public IActionResult Details(Guid?id)
        {
            if (id == null)
            {
                return(NotFound());
            }

            var post = postsService.GetPostById(id.ToString());

            //var post = await _context.Posts
            //    .Include(p => p.Blog)
            //    .FirstOrDefaultAsync(m => m == id);

            if (post == null)
            {
                return(NotFound());
            }

            return(View(post));
        }
Пример #6
0
        public void _Call_PostRepository_GetPostById(int id)
        {
            //Arrange
            var mockedPostRepository   = new Mock <IRepository <Post> >();
            var mockedUserService      = new Mock <IUserService>();
            var mockedUnitOfWork       = new Mock <IUnitOfWork>();
            var mockedPostFactory      = new Mock <IPostFactory>();
            var mockedCategoryService  = new Mock <ICategoryService>();
            var mockedDateTimeProvider = new Mock <IDateTimeProvider>();

            var postService = new PostsService(
                mockedPostRepository.Object,
                mockedUserService.Object,
                mockedUnitOfWork.Object,
                mockedPostFactory.Object,
                mockedCategoryService.Object,
                mockedDateTimeProvider.Object);

            //Act
            postService.GetPostById(id);

            //Assert
            mockedPostRepository.Verify(r => r.GetById(id), Times.Once);
        }
Пример #7
0
        public JsonResult GetPostById(int postId, int userId)
        {
            var dt = _postService.GetPostById(userId, postId);

            return(Json(dt, JsonRequestBehavior.AllowGet));
        }