public void UnitTestSubForumInvalidSubForum() { Assert.IsTrue(SubForum.create(null, "subforum", new List <Post>()) == null); Assert.IsTrue(SubForum.create("null", "subforum", new List <Post>()) == null); Assert.IsTrue(SubForum.create("", "subforum", new List <Post>()) == null); Assert.IsTrue(SubForum.create("forum\n", "subforum", new List <Post>()) == null); Assert.IsTrue(SubForum.create(" forum", "subforum", new List <Post>()) == null); Assert.IsTrue(SubForum.create("forum", null, new List <Post>()) == null); Assert.IsTrue(SubForum.create("forum", "null", new List <Post>()) == null); Assert.IsTrue(SubForum.create("forum", "", new List <Post>()) == null); Assert.IsTrue(SubForum.create("forum", "subforum\n", new List <Post>()) == null); Assert.IsTrue(SubForum.create("forum", " subforum", new List <Post>()) == null); Assert.IsTrue(SubForum.create("forum", "subforum", null) == null); Assert.IsTrue(SubForum.create(null, "subforum", new List <Post>()) == null); Assert.IsTrue(SubForum.create("null", "subforum", new List <Post>()) == null); Assert.IsTrue(SubForum.create("", "subforum", new List <Post>()) == null); Assert.IsTrue(SubForum.create("forum\n", "subforum", new List <Post>()) == null); Assert.IsTrue(SubForum.create(" forum", "subforum", new List <Post>()) == null); Assert.IsTrue(SubForum.create("forum", null, new List <Post>()) == null); Assert.IsTrue(SubForum.create("forum", "null", new List <Post>()) == null); Assert.IsTrue(SubForum.create("forum", "", new List <Post>()) == null); Assert.IsTrue(SubForum.create("forum", "subforum\n", new List <Post>()) == null); Assert.IsTrue(SubForum.create("forum", " subforum", new List <Post>()) == null); Assert.IsTrue(SubForum.create("forum", "subforum", null) == null); }
public void updateSubForumsList(SubForum[] subforums) { clearList(); for (int i = 0; i < subforums.Length; i++) createNewLine(subforums[i].subForumTitle); }
public async Task <IActionResult> Edit(int id, [Bind("SubForumId,Name,Description,Picture")] SubForum subForum) { if (id != subForum.SubForumId) { return(NotFound()); } if (ModelState.IsValid) { try { await _subforumService.Update(subForum); } catch (DbUpdateConcurrencyException) { if (!_subforumService.SubForumExists(subForum.SubForumId)) { return(NotFound()); } else { throw; } } return(RedirectToAction(nameof(Index))); } return(View(subForum)); }
public void UnitTestSubForumWritePost() { SubForum sf = SubForum.create("forum", "subforum"); User u = User.create("user", "password", "*****@*****.**", "q", "a"); Assert.IsTrue(sf.writePost(0, u, "title", "content").Equals("true")); }
public void AddPost_returns_one_when_correct() { var user = new ForumUser { Id = Guid.NewGuid().ToString(), UserName = TestsConstants.TestUsername3 }; this.dbService.DbContext.Users.Add(user); this.dbService.DbContext.SaveChanges(); var forum = new SubForum { Id = Guid.NewGuid().ToString(), Posts = new List <Models.Post>() }; this.dbService.DbContext.Forums.Add(forum); this.dbService.DbContext.SaveChanges(); var model = new PostInputModel { ForumId = forum.Id, Description = TestsConstants.ValidPostDescription, ForumName = forum.Name, Name = TestsConstants.ValidPostName }; var expectedResult = 1; var actualResult = this.postService.AddPost(model, user, forum.Id).GetAwaiter().GetResult(); Assert.Equal(expectedResult, actualResult); }
}//uc public IList <string> AllPostreplies(string forum, string sub, string parentPost, string user, string pass) { Forum f = this.OurSystem.GetForumByName(forum); Member m = f.GetMemberByNameAndPass(user, pass); SubForum subforum = null; List <string> replies = new List <string>(); Post p = null; if (m != null && f.OnlineMember.Contains(m)) { subforum = f.GetSubForumByName(sub); if (subforum != null) { p = subforum.GetThreadByBody(parentPost); } } if (p != null) { for (int i = 0; i < p.getComments().Count; i++) { replies.Add(p.getComments().ElementAt(i).getMsg()); } } return(replies); } //get list of all replies of specific post
public addDiscussionView(ref IController controller, UserAccount user, SubForum sf) { InitializeComponent(); _controller = controller; _user = user; _sf = sf; }
public void UnitTestSubForumCreate() { Assert.IsTrue(SubForum.create("forum", "subforum", new List <Post>()) != null); User u = User.create("user", "password", "*****@*****.**", "q", "a"); Post t1 = Post.create("title1", "content1", u, null); Post t2 = Post.create("title2", "content2", u, null); Post t3 = Post.create("title3", "content3", u, null); Post p11 = Post.create("title11", "content11", u, t1); Post p21 = Post.create("title21", "content21", u, t2); Post p12 = Post.create("title12", "content12", u, p11); Post p31 = Post.create("title31", "content31", u, t3); p11.readReplies(new List <Post> { p12 }); t1.readReplies(new List <Post> { p11 }); t2.readReplies(new List <Post> { p21 }); t3.readReplies(new List <Post> { p31 }); Assert.IsTrue(SubForum.create("forum", "sub_forum", new List <Post> { t1, t2, t3 }) != null); }
public Boolean deleteSubForum(string user, string pass, string forum, string sub) { Forum f = this.OurSystem.GetForumByName(forum); Member m = f.GetMemberByNameAndPass(user, pass); SubForum s = f.GetSubForumByName(sub); return(OurSystem.deleteSubForum(m, f, s)); }
public Discussions_window(ref IController _controller, SubForum current) { WindowStartupLocation = WindowStartupLocation.CenterScreen; InitializeComponent(); controller = _controller; discussions = new List <Disscusion>(); discussions = current.getDiscussions(); this.DataContext = this; }
public void UnitTestSubForumReplyToDeletedThread() { SubForum sf = SubForum.create("forum", "subforum"); User u = User.create("user", "password", "*****@*****.**", "q", "a"); sf.writePost(0, u, "title1", "content1"); sf.deletePost(1, postDeletionPermission.WRITER, permission.MODERATOR, "user"); Assert.IsTrue(!sf.writePost(1, u, "title2", "content2").Equals("true")); }
}//uc public Boolean deletePost(string user, string pass, string forum, string sub, string subject, string body) { Forum f = this.OurSystem.GetForumByName(forum); Member m = f.GetMemberByNameAndPass(user, pass); SubForum s = f.GetSubForumByName(sub); Post p = s.GetThreadByBody(body); return(OurSystem.deletePost(m, p)); }
public void UnitTestForumCreateForum() { ForumPolicy fp = new ForumPolicy(); Assert.IsTrue(Forum.create("forum", fp, new List <SubForum>() { SubForum.create("forum", "subforum") }) != null); }
public int Delete(SubForum forum) { var forumPosts = this.dbService.DbContext.Posts.Where(p => p.ForumId == forum.Id).ToList(); this.dbService.DbContext.RemoveRange(forumPosts); this.dbService.DbContext.Remove(forum); return(this.dbService.DbContext.SaveChanges()); }
private void SetUp() { f = new Forum("forum test"); f.ChangePolicy(new DefaultPolicy()); f.Register("yaniv", "aaa", "*****@*****.**", "yanivra"); m = f.login("yaniv", "aaa"); f.AddNewSubForum("blabla", m); sf = new SubForum("maccabi"); }
public async Task <IActionResult> Create([Bind("SubForumId,Name,Description,Picture")] SubForum subForum) { if (ModelState.IsValid) { await _subforumService.Add(subForum); return(RedirectToAction(nameof(Index))); } return(View(subForum)); }
public void AddNewSubForumTest() { List <SubForum> FoodSubs = new List <SubForum>(); SubForum PassoverRecepies = setUpSubForum(11, "PassoverRecepies", null, "Food"); SubForum ChosherRecepies = setUpSubForum(12, "ChosherRecepies", null, "Food"); FoodSubs.Add(PassoverRecepies); FoodSubs.Add(ChosherRecepies); Assert.IsTrue(subForumInForum(FoodSubs, Food)); }
public void TestAddNewSubForum() { setUp(); admin.AddNewSubForum("Books", m); SubForum s = new SubForum("Books"); List <SubForum> lst = (List <SubForum>)f.getSubForum(); Assert.IsTrue(lst[0].Name == s.Name); Assert.AreEqual(lst.Count, 1); }
public void UnitTestSubForumDeleteReply() { SubForum sf = SubForum.create("forum", "subforum"); User u = User.create("user", "password", "*****@*****.**", "q", "a"); sf.writePost(0, u, "title1", "content1"); sf.writePost(1, u, "title2", "content2"); sf.writePost(2, u, "title3", "content3"); Assert.IsTrue(sf.deletePost(2, postDeletionPermission.WRITER, permission.ADMIN, "user").Equals("true")); Assert.IsTrue(sf.getNumOfPOsts() == 1); }
public bool SubforumExists(SubForum subForum) { if (_context.SubForum.Any(o => o.Name == subForum.Name)) { return(true); } else { return(false); } }
} // list of all posts in the subforum public Boolean addPost(string forum, string sub, string subject, string body, string user, string pass) { Forum f = this.OurSystem.GetForumByName(forum); Member m = f.GetMemberByNameAndPass(user, pass); SubForum subforum = null; if (m != null && f.OnlineMember.Contains(m)) { subforum = f.GetSubForumByName(sub); } return(this.OurSystem.PublishNewThread(m, body, subforum)); }//uc
} // get list of all moderators names public IList <string> subForumPosts(string user, string pass, string forum, string subForum) { List <string> ReturnValue = new List <string>(); Forum f = this.OurSystem.GetForumByName(forum); Member m = f.GetMemberByNameAndPass(user, pass); SubForum s = f.GetSubForumByName(subForum); for (int i = 0; i < s.MyThreads.Count; i++) { ReturnValue.Add(s.MyThreads.ElementAt(i).getMsg()); } return(ReturnValue); }
public void UnitTestSubForumDeletePostFail() { SubForum sf = SubForum.create("forum", "subforum"); User u = User.create("user", "password", "*****@*****.**", "q", "a"); sf.writePost(0, u, "title1", "content1"); Assert.IsTrue(!sf.deletePost(0, postDeletionPermission.WRITER, permission.MEMBER, "user").Equals("true")); Assert.IsTrue(!sf.deletePost(1, postDeletionPermission.WRITER, permission.MEMBER, "user1").Equals("true")); Assert.IsTrue(!sf.deletePost(1, postDeletionPermission.MODERATOR, permission.MEMBER, "user").Equals("true")); Assert.IsTrue(!sf.deletePost(1, postDeletionPermission.ADMIN, permission.MEMBER, "user").Equals("true")); Assert.IsTrue(!sf.deletePost(1, postDeletionPermission.SUPER_ADMIN, permission.MEMBER, "user").Equals("true")); Assert.IsTrue(!sf.deletePost(1, postDeletionPermission.INVALID, permission.MEMBER, "user").Equals("true")); }
public void UnitTestSubForumEditPostFail() { SubForum sf = SubForum.create("forum", "subforum"); User u = User.create("user", "password", "*****@*****.**", "q", "a"); Assert.IsTrue(!sf.editPost(1, "superAdmin", permission.SUPER_ADMIN, "new content").Equals("true")); sf.writePost(0, u, "title1", "content1"); Assert.IsTrue(!sf.editPost(2, "superAdmin", permission.SUPER_ADMIN, "new content").Equals("true")); sf.writePost(1, u, "title2", "content2"); sf.deletePost(2, postDeletionPermission.MODERATOR, permission.SUPER_ADMIN, "superAdmin"); Assert.IsTrue(!sf.editPost(2, "superAdmin", permission.SUPER_ADMIN, "new content").Equals("true")); sf.deletePost(1, postDeletionPermission.MODERATOR, permission.SUPER_ADMIN, "superAdmin"); Assert.IsTrue(!sf.editPost(1, "superAdmin", permission.SUPER_ADMIN, "new content").Equals("true")); }
public ActionResult <SubForum> PostSubForum(SubForum subForum) { string authHeaderValue = Request.Headers["Authorization"]; var tokenClaims = GetClaims(authHeaderValue.Substring("Bearer ".Length).Trim()); subForum.UserId = Convert.ToInt32(tokenClaims.Claims.Where(c => c.Type == ClaimTypes.NameIdentifier).FirstOrDefault().Value); if (subForum != null && !_subForumLogic.SubforumExists(subForum)) { _subForumLogic.CreateSubForum(subForum); return(Ok()); } else { return(StatusCode(422)); } }
} // how much complains a moderator has public IList <string> subForumModerators(string user, string pass, string forum, string subForum) { List <string> ReturnValue = new List <string>(); Forum f = this.OurSystem.GetForumByName(forum); Member m = f.GetMemberByNameAndPass(user, pass); SubForum s = f.GetSubForumByName(subForum); for (int i = 0; i < f.Members.Count; i++) { if ((f.Members.ElementAt(i).state is Moderator) && ((Moderator)f.Members.ElementAt(i).state).subForum.Name.Equals(subForum)) { ReturnValue.Add(f.Members.ElementAt(i).username); } } return(ReturnValue); } // get list of all moderators names
private void SeedDb() { this.TruncateCategoriesTable(); this.TruncateForumsTable(); this.TruncatePostsTable(); this.TruncateUsersTable(); this.TruncateRolesTable(); var ownerRole = new IdentityRole { Id = TestsConstants.TestId1, ConcurrencyStamp = "test", NormalizedName = Common.Role.Owner.ToUpper(), Name = Common.Role.Owner }; var adminRole = new IdentityRole { Id = TestsConstants.TestId2, ConcurrencyStamp = "test", NormalizedName = Common.Role.Administrator.ToUpper(), Name = Common.Role.Administrator }; var userRole = new IdentityRole { Id = TestsConstants.TestId3, ConcurrencyStamp = "test", NormalizedName = Common.Role.User.ToUpper(), Name = Common.Role.User }; this.dbService.DbContext.Roles.Add(ownerRole); this.dbService.DbContext.Roles.Add(adminRole); this.dbService.DbContext.Roles.Add(userRole); this.dbService.DbContext.SaveChanges(); ForumUser user, secondUser; SeedUsers(out user, out secondUser); this.userManager.AddToRoleAsync(user, Common.Role.Owner).GetAwaiter().GetResult(); this.userManager.AddToRoleAsync(secondUser, Common.Role.User).GetAwaiter().GetResult(); Models.Category category = SeedCategories(user, secondUser); var forum = new SubForum { Category = category, CategoryId = category.Id, Id = TestsConstants.TestId, Name = TestsConstants.ValidForumName }; this.dbService.DbContext.Forums.Add(forum); this.dbService.DbContext.SaveChanges(); var post = new Models.Post { Id = TestsConstants.TestId, Name = TestsConstants.ValidPostName, Forum = forum, ForumId = forum.Id }; this.dbService.DbContext.Posts.Add(post); this.dbService.DbContext.SaveChanges(); }
public Boolean promoteMemberToModerator(string user, string pass, string forum, string member, string subForum) { bool res = false; Forum f = this.OurSystem.GetForumByName(forum); Member m = f.GetMemberByNameAndPass(user, pass); SubForum s = f.GetSubForumByName(subForum); Member MemberToModerator = null; for (int i = 0; i < f.Members.Count; i++) { if (f.Members.ElementAt(i).username.Equals(member)) { MemberToModerator = f.Members.ElementAt(i); } } return(this.OurSystem.promoteMemberToModerator(m, MemberToModerator, s)); }
public void UnitTestSubForumDeletePost() { SubForum sf = SubForum.create("forum", "subforum"); User u = User.create("user", "password", "*****@*****.**", "q", "a"); sf.writePost(0, u, "title1", "content1"); sf.writePost(0, u, "title2", "content2"); sf.writePost(0, u, "title3", "content3"); sf.writePost(0, u, "title4", "content4"); sf.writePost(0, u, "title5", "content5"); sf.writePost(0, u, "title6", "content6"); Assert.IsTrue(sf.deletePost(1, postDeletionPermission.WRITER, permission.MEMBER, "user").Equals("true")); Assert.IsTrue(sf.deletePost(2, postDeletionPermission.WRITER, permission.ADMIN, "user").Equals("true")); Assert.IsTrue(sf.deletePost(3, postDeletionPermission.MODERATOR, permission.ADMIN, "user").Equals("true")); Assert.IsTrue(sf.deletePost(4, postDeletionPermission.ADMIN, permission.ADMIN, "user").Equals("true")); Assert.IsTrue(sf.deletePost(5, postDeletionPermission.SUPER_ADMIN, permission.SUPER_ADMIN, "superAdmin").Equals("true")); Assert.IsTrue(sf.deletePost(6, postDeletionPermission.INVALID, permission.SUPER_ADMIN, "superAdmin").Equals("true")); }
public void UnitTestSubForumCountPosts() { SubForum sf = SubForum.create("forum", "subforum"); User u = User.create("user", "password", "*****@*****.**", "q", "a"); sf.writePost(0, u, "title1", "content1"); sf.writePost(0, u, "title2", "content2"); sf.writePost(0, u, "title3", "content3"); sf.writePost(1, u, "title11", "content11"); sf.writePost(2, u, "title21", "content21"); sf.writePost(4, u, "title12", "content12"); sf.writePost(3, u, "title31", "content31"); Assert.IsTrue(sf.getNumOfPOsts() == 7); sf.deletePost(4, postDeletionPermission.WRITER, permission.MODERATOR, "user"); Assert.IsTrue(sf.getNumOfPOsts() == 5); sf.deletePost(2, postDeletionPermission.MODERATOR, permission.MODERATOR, "moderator"); Assert.IsTrue(sf.getNumOfPOsts() == 3); }
public void setUp() { Administrator sportsAdmin = new Administrator("guy godes", "abcde", "*****@*****.**"); Forum sports = new Forum("Sports", sportsAdmin); Storage.forumStorage.Add(sports); Moderator basketBallMod = new Moderator("james", "jmsk", "*****@*****.**"); Storage.moderatorStorage.Add(basketBallMod); SubForum basketball = new SubForum("BasketBall", basketBallMod); sports.addSubForum(basketball); Administrator compAdmin = new Administrator("john jj", "abcd", "*****@*****.**"); Storage.adminStorage.Add(compAdmin); Administrator newAdmin = new Administrator("jj", "abcd", "*****@*****.**"); Storage.adminStorage.Add(newAdmin); }