def testUserIdsAndNames(self):
     acl = self.folder.acl_users
     for role in ug('user_roles'):
         acl.manage_addGroup(role)
     expected = sorted([(repr(x), repr(x)) for x in range(100)])
     for name in expected:
         u = user.copy()
         u['cn'] = name[0]
         u['sn'] = name[1]
         msg = acl.manage_addUser(REQUEST=None, kwargs=u)
         self.assertTrue(not msg)
     userlist = acl.getUserIdsAndNames()
     self.assertEqual(userlist, tuple(expected))
        # searched for that
        acl.manage_addLDAPSchemaItem('dn', 'DN')
        user2_dn = 'cn=%s,%s' % (user_cn, acl.users_base)
        result = acl.searchUsers(dn=user2_dn, exact_match=True)
        self.assertEquals(len(result), 1)
        self.assertEquals(result[0].get(key), user_cn)


    def testGetUserNames(self):
        acl = self.folder.acl_users
        for role in ug('user_roles'):
            acl.manage_addGroup(role)
        expected = [`x` for x in range(100)]
        expected.sort()
        for name in expected:
            u = user.copy()
            u['cn'] = name
            u['sn'] = name
            msg = acl.manage_addUser(REQUEST=None, kwargs=u)
            self.assert_(not msg)
        userlist = acl.getUserNames()
        self.assertEqual(userlist, tuple(expected))

    def testUserIds(self):
        acl = self.folder.acl_users
        for role in ug('user_roles'):
            acl.manage_addGroup(role)
        expected = [`x` for x in range(100)]
        expected.sort()
        for name in expected:
            u = user.copy()
        # Weird edge case: Someone put "dn" into the LDAP Schema tab and
        # searched for that
        acl.manage_addLDAPSchemaItem('dn', 'DN')
        user2_dn = 'cn=%s,%s' % (user_cn, acl.users_base)
        result = acl.searchUsers(dn=user2_dn, exact_match=True)
        self.assertEquals(len(result), 1)
        self.assertEquals(result[0].get(key), user_cn)

    def testGetUserNames(self):
        acl = self.folder.acl_users
        for role in ug('user_roles'):
            acl.manage_addGroup(role)
        expected = [ ` x ` for x in range(100)]
        expected.sort()
        for name in expected:
            u = user.copy()
            u['cn'] = name
            u['sn'] = name
            msg = acl.manage_addUser(REQUEST=None, kwargs=u)
            self.assert_(not msg)
        userlist = acl.getUserNames()
        self.assertEqual(userlist, tuple(expected))

    def testGetUserNames_nouser(self):
        # Special behavior for the ZMI, which will show a different
        # widget if OverflowError is encountered
        acl = self.folder.acl_users
        self.assertRaises(OverflowError, acl.getUserNames)

    def testUserIds(self):
        acl = self.folder.acl_users