0001-show-synced-LDAP-users-with-verbosity-2-33870.patch
src/authentic2/management/commands/sync-ldap-users.py | ||
---|---|---|
14 | 14 |
# You should have received a copy of the GNU Affero General Public License |
15 | 15 |
# along with this program. If not, see <http://www.gnu.org/licenses/>. |
16 | 16 | |
17 |
from __future__ import print_function |
|
17 | 18 |
try: |
18 | 19 |
import ldap |
19 | 20 |
from ldap.filter import filter_format # noqa: F401 |
... | ... | |
27 | 28 | |
28 | 29 |
class Command(BaseCommand): |
29 | 30 |
def handle(self, *args, **kwargs): |
30 |
list(LDAPBackend.get_users()) |
|
31 |
verbosity = int(kwargs['verbosity']) |
|
32 |
if verbosity > 1: |
|
33 |
print('Updated users :') |
|
34 |
for user in LDAPBackend.get_users(): |
|
35 |
if getattr(user, '_changed', False) and verbosity > 1: |
|
36 |
print(' -', user.uuid, user.get_username(), user.get_full_name()) |
tests/test_ldap.py | ||
---|---|---|
781 | 781 |
assert '_auth_user_id' in app.session |
782 | 782 | |
783 | 783 | |
784 |
def test_sync_ldap_users(slapd, settings, app, db): |
|
784 |
def test_sync_ldap_users(slapd, settings, app, db, capsys):
|
|
785 | 785 |
settings.LDAP_AUTH_SETTINGS = [{ |
786 | 786 |
'url': [slapd.ldap_url], |
787 | 787 |
'basedn': u'o=ôrga', |
... | ... | |
806 | 806 |
multiple=False) |
807 | 807 | |
808 | 808 |
assert User.objects.count() == 0 |
809 |
management.call_command('sync-ldap-users') |
|
809 |
capsys.readouterr() |
|
810 |
management.call_command('sync-ldap-users', verbosity=2) |
|
811 |
assert len(capsys.readouterr().out.splitlines()) == 7 |
|
810 | 812 |
assert User.objects.count() == 6 |
811 | 813 |
assert all(user.first_name == u'Étienne' for user in User.objects.all()) |
812 | 814 |
assert all(user.attributes.first_name == u'Étienne' for user in User.objects.all()) |
... | ... | |
817 | 819 |
assert all([user.userexternalid_set.first().external_id |
818 | 820 |
== urlparse.quote(user.username.split('@')[0].encode('utf-8')) |
819 | 821 |
for user in User.objects.all()]) |
822 |
capsys.readouterr() |
|
823 |
management.call_command('sync-ldap-users', verbosity=2) |
|
824 |
assert len(capsys.readouterr().out.splitlines()) == 1 |
|
820 | 825 | |
821 | 826 | |
822 | 827 |
def test_alert_on_wrong_user_filter(slapd, settings, client, db, caplog): |
823 |
- |