Ejemplo n.º 1
0
        public virtual void TestUserRemoval()
        {
            IList <string> users = new AList <string>();

            users.AddItem(User1);
            users.AddItem(User2);
            NetgroupCache.Add(Group1, users);
            VerifyGroupMembership(User1, 1, Group1);
            VerifyGroupMembership(User2, 1, Group1);
            users.Remove(User2);
            NetgroupCache.Clear();
            NetgroupCache.Add(Group1, users);
            VerifyGroupMembership(User1, 1, Group1);
            VerifyGroupMembership(User2, 0, null);
        }
Ejemplo n.º 2
0
        public virtual void TestMembership()
        {
            IList <string> users = new AList <string>();

            users.AddItem(User1);
            users.AddItem(User2);
            NetgroupCache.Add(Group1, users);
            users = new AList <string>();
            users.AddItem(User1);
            users.AddItem(User3);
            NetgroupCache.Add(Group2, users);
            VerifyGroupMembership(User1, 2, Group1);
            VerifyGroupMembership(User1, 2, Group2);
            VerifyGroupMembership(User2, 1, Group1);
            VerifyGroupMembership(User3, 1, Group2);
        }
 /// <summary>Add a group to cache, only netgroups are cached</summary>
 /// <param name="groups">list of group names to add to cache</param>
 /// <exception cref="System.IO.IOException"/>
 public override void CacheGroupsAdd(IList <string> groups)
 {
     foreach (string group in groups)
     {
         if (group.Length == 0)
         {
         }
         else
         {
             // better safe than sorry (should never happen)
             if (group[0] == '@')
             {
                 if (!NetgroupCache.IsCached(group))
                 {
                     NetgroupCache.Add(group, GetUsersForNetgroup(group));
                 }
             }
         }
     }
 }