public IActionResult Put(uint id, [FromBody] PostFormPut form) { if (!this.IsAdmin()) { form.Author = User.GetId(); } return(Put <PostFormPut>(id, form)); }
public void PutEntityBadRepositoryGetId() { var controller = new PostController(GetMockRepo(false)); var entity = new PostFormPut { Title = "test" }; controller.SetClaimsPrincipal(1, "*****@*****.**", Role.Admin); // Act var result = controller.Put(1, entity); // Assert Assert.IsType <UnprocessableEntityObjectResult>(result); }
public void PutEntityNoExist() { // Arrange var controller = new PostController(GetMockRepo()); var entity = new PostFormPut { Title = "test" }; controller.SetClaimsPrincipal(1, "*****@*****.**", Role.Admin); // Act var result = controller.Put(0, entity); // Assert Assert.IsType <NotFoundObjectResult>(result); }
public void PutEntityExist() { // Arrange var controller = new PostController(GetMockRepo()); var entity = new PostFormPut { Author = 2, Title = "test", Description = "testDescipriton", Language = 1, Snippet = "testSnippet", IsActive = false }; controller.SetClaimsPrincipal(1, "*****@*****.**", Role.Admin); // Act var result = controller.Put(1, entity); // Assert Assert.IsType <OkObjectResult>(result); }
public void PutEntityAsUserCannotChangeAuthor() { // Arrange uint id = 2; var controller = new PostController(GetMockRepo()); var entity = new PostFormPut { Author = 1, Title = "test", Description = "testDescipriton", Language = 1, Snippet = "testSnippet", IsActive = false }; controller.SetClaimsPrincipal(id, "*****@*****.**", Role.User); // Act _ = controller.Put(id, entity); controller.SetClaimsPrincipal(1, "*****@*****.**", Role.Admin); var result = controller.Get(id) as OkObjectResult; var author = (uint)result.Value.GetType().GetProperty("Author")?.GetValue(result.Value); // Assert Assert.Equal(author, id); }
public IActionResult Put(uint id, [FromBody] PostFormPut post) { return(StatusCode(StatusCodes.Status500InternalServerError)); }