public void AddOrRemoveUserToGroupExecutorTest() { SCGroup group = SCObjectGenerator.PrepareGroupObject(); SCObjectOperations.Instance.AddGroup(group, SCOrganization.GetRoot()); SCUser user1 = SCObjectGenerator.PrepareUserObject(); SCObjectOperations.Instance.AddUser(user1, SCOrganization.GetRoot()); Console.WriteLine("UserID: {0}, GroupID: {1}", user1.ID, group.ID); SCMemberRelation mr = SCObjectOperations.Instance.AddUserToGroup(user1, group); SCObjectOperations.Instance.RemoveUserFromGroup(user1, group); // 确认删除 Assert.IsFalse(group.CurrentMembersRelations.ContainsKey(user1.ID)); Assert.IsFalse(user1.CurrentMemberOfRelations.ContainsKey(group.ID)); SCObjectOperations.Instance.AddUserToGroup(user1, group); // 重置数据 group.ClearRelativeData(); user1.ClearRelativeData(); // 确认又加回来了 Assert.IsTrue(group.CurrentUsers.ContainsKey(user1.ID)); Assert.IsTrue(user1.CurrentGroups.ContainsKey(group.ID)); Console.WriteLine("UserID: {0}, GroupID: {1}", user1.ID, group.ID); }
public void MoveGroupTest() { SCOrganization root = SCOrganization.GetRoot(); SCGroup group = SCObjectGenerator.PrepareGroupObject(); SCObjectOperations.Instance.AddGroup(group, root); SCOrganization newOrg = SCObjectGenerator.PrepareOrganizationObject(); SCObjectOperations.Instance.AddOrganization(newOrg, root); SCObjectOperations.Instance.MoveObjectToOrganization(null, group, newOrg); group.ClearRelativeData(); newOrg.ClearRelativeData(); root.ClearRelativeData(); Assert.IsTrue(group.CurrentParents.ContainsKey(newOrg.ID)); Assert.IsTrue(newOrg.CurrentChildren.ContainsKey(group.ID)); Assert.IsFalse(root.CurrentChildren.ContainsKey(group.ID)); }