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)); }