public void CreateBlog_WhenCalled_ReturnCreatedObjectResult()
        {
            var data = new List <Blogpost>().AsQueryable();

            var newBlog = new BlogpostCreate()
            {
                Author = "Admin",
                Title  = "New Blog",
                Text   = "Lorem Ipsum"
            };

            var mockSet = new Mock <DbSet <Blogpost> >();

            mockSet.As <IQueryable <Blogpost> >().Setup(m => m.Provider).Returns(data.Provider);
            mockSet.As <IQueryable <Blogpost> >().Setup(m => m.Expression).Returns(data.Expression);
            mockSet.As <IQueryable <Blogpost> >().Setup(m => m.ElementType).Returns(data.ElementType);
            mockSet.As <IQueryable <Blogpost> >().Setup(m => m.GetEnumerator()).Returns(data.GetEnumerator());

            var mockContext = new Mock <BlogpostContext>();

            mockContext.Setup(c => c.Blogposts).Returns(mockSet.Object);

            var service      = new BlogpostsController(mockContext.Object);
            var actualResult = service.CreateBlog(newBlog);

            Assert.IsInstanceOfType(actualResult, typeof(CreatedResult));
        }
        public IActionResult CreateBlog([FromBody] BlogpostCreate blogpostCreate)
        {
            var newBlogpost = new Blogpost()
            {
                Title    = blogpostCreate.Title,
                Text     = blogpostCreate.Text,
                Author   = blogpostCreate.Author,
                DateTime = DateTime.Now
            };

            _context.Blogposts.Add(newBlogpost);
            _context.SaveChanges();

            return(Created("GetBlogposts", newBlogpost));
        }