コード例 #1
0
        public async Task TestIfServiceReturnComment()
        {
            var options = new DbContextOptionsBuilder <ApplicationDbContext>()
                          .UseInMemoryDatabase(Guid.NewGuid().ToString());
            var context            = new ApplicationDbContext(options.Options);
            var commentsRepository = new EfDeletableEntityRepository <Comment>(context);

            var service = new CommentsService(commentsRepository);

            var firstId = await service.AddCommentAsync(1, "1", "Test content");

            var secondId = await service.AddCommentAsync(1, "1", "Test content 2");

            var thirdId = await service.AddCommentAsync(1, "1", "Test content 3");

            AutoMapperConfig.RegisterMappings(this.GetType().Assembly);

            var firstComment  = service.GetComment <TestCommentModel>(firstId);
            var secondComment = service.GetComment <TestCommentModel>(secondId);
            var thirdComment  = service.GetComment <TestCommentModel>(thirdId);

            Assert.Equal("Test content", firstComment.Content);
            Assert.Equal("Test content 2", secondComment.Content);
            Assert.Equal("Test content 3", thirdComment.Content);
        }
コード例 #2
0
        public async Task AddingComments()
        {
            var list     = new List <Comment>();
            var mockRepo = new Mock <IDeletableEntityRepository <Comment> >();

            mockRepo.Setup(x => x.All()).Returns(list.AsQueryable());
            mockRepo.Setup(x => x.AddAsync(It.IsAny <Comment>()))
            .Callback(
                (Comment comment) => list.Add(comment));
            var service = new CommentsService(mockRepo.Object);
            await service.AddCommentAsync("test", 1, "Pesho");

            Assert.Equal(1, list.Count);
        }
コード例 #3
0
        public async Task TestIfServiceAddComment()
        {
            var options            = new DbContextOptionsBuilder <ApplicationDbContext>().UseInMemoryDatabase("CookingPot");
            var commentsRepository = new EfDeletableEntityRepository <Comment>(new ApplicationDbContext(options.Options));

            var service = new CommentsService(commentsRepository);

            for (int i = 0; i < 5; i++)
            {
                await service.AddCommentAsync(1, "1", i.ToString());
            }

            var count = service.GetRecipeCountComments(1);

            Assert.Equal(5, count);
        }
コード例 #4
0
        public async Task DeleteCommentsWithOtherUserIdMustReturnFalse()
        {
            var list     = new List <Comment>();
            var mockRepo = new Mock <IDeletableEntityRepository <Comment> >();

            mockRepo.Setup(x => x.All()).Returns(list.AsQueryable());
            mockRepo.Setup(x => x.AddAsync(It.IsAny <Comment>()))
            .Callback(
                (Comment comment) => list.Add(comment));
            mockRepo.Setup(x => x.Delete(It.IsAny <Comment>()))
            .Callback((Comment comment) => list.Remove(comment));
            var service = new CommentsService(mockRepo.Object);

            var comment = service.AddCommentAsync("test", 1, "PeshoId");

            Assert.False(await service.DeleteCommentAsync(0, "GoshoId"));
        }
コード例 #5
0
        public async void CreateComments(CommentDto dto)
        {
            //dto.Username = HttpContext.User.Identity.Name;
            if (!dto.ApplyToAll)
            {
                var service = new CommentsService();
                await service.AddCommentAsync(dto);
            }
            else
            {
                var commentsService = new CommentsService();
                var controller      = new StatsController();
                var stats           = (await controller.Get());

                foreach (var s in stats)
                {
                    dto.AdaptivReconId = s.AdaptivReconId;
                    dto.Reference      = s.Reference;
                    await commentsService.AddCommentAsync(dto);
                }
            }
        }