public void GetAll_ShouldReturnBadRequest()
        {
            var mockContext = new Mock <HubDbContext>(options);

            mockContext.Setup(m => m.SocialMediaPost).Throws(new Exception());
            var controller = new SocialMediaPostsController(mockContext.Object, logger.Object, mapper);

            var result = controller.GetAllSocialMediaPosts() as ObjectResult;

            result.Should().BeOfType <BadRequestObjectResult>();
            result.StatusCode.Should().Be(400);
        }
        public SocialMediaPostsControllerTests()
        {
            options = new DbContextOptionsBuilder <HubDbContext>()
                      .UseInMemoryDatabase(Guid.NewGuid().ToString())
                      .Options;
            context = new HubDbContext(options);
            logger  = new Mock <ILogger <SocialMediaPostsController> >();
            var mockMapper = new MapperConfiguration(cfg =>
            {
                cfg.AddProfile(new MappingProfile());
            });

            mapper     = mockMapper.CreateMapper();
            controller = new SocialMediaPostsController(context, logger.Object, mapper);
        }
        public void Get_ShouldReturnFail()
        {
            var mockContext = new Mock <HubDbContext>(options);

            mockContext.Setup(m => m.SocialMediaPost).Throws(new Exception());
            var controller = new SocialMediaPostsController(mockContext.Object, logger.Object, mapper);

            var testDbPost = TestData.CreateDbSocialMediaPost("http://facebook.com/post/123");

            context.SocialMediaPost.Add(testDbPost);
            context.SaveChanges();

            var result = controller.GetSocialMediaPost(testDbPost.Id) as ObjectResult;

            result.Should().BeOfType <BadRequestObjectResult>();
            result.StatusCode.Should().Be(400);
        }