public static void DeleteResponse(int messageId, string userId, out StringBuilder errors)//Can be used for deleting a response or marking a response as read. { try { using (var db = new ApplicationDbContext()) { errors = new StringBuilder(); Message message = GetMessageById(messageId); ApplicationUser user = UserRoles.GetUserById(userId); Post post = UserPost.GetPostById(message.postId); if (!MessageAction.CanUpdateMessageDatabase(message, user, post)) { errors.Append("Can't delete Message"); return; } message.Deleted = true; db.Messages.AddOrUpdate(message); db.SaveChanges(); } } catch (Exception e) { Console.WriteLine(e); throw; } }
public void RequiredUserToDelete() { var post = GetPostWithMessages(); foreach (var m in post.Messages) { Assert.IsFalse(MessageAction.CanUpdateMessageDatabase(m, null, post)); } }
public void NotSenderMessageDelete() { var post = GetPostWithMessages(); foreach (var m in post.Messages) { Assert.IsFalse(MessageAction.CanUpdateMessageDatabase(m, m.CreatedBy, post)); } }
public static void ReadResponse(Message message, ApplicationUser user, Post post, out StringBuilder errors)//Can be used for deleting a response or marking a response as read. { try { errors = new StringBuilder(); if (!MessageAction.CanUpdateMessageDatabase(message, user, post)) { errors.Append("Post "); return; } message.Read = true; } catch (Exception e) { Console.WriteLine(e); throw; } }
public void RequiredMessageToDelete() { var post = GetPostWithMessages(); Assert.IsFalse(MessageAction.CanUpdateMessageDatabase(null, post.Author, post)); }