495 |
495 |
resp = login(app, superuser, url)
|
496 |
496 |
|
497 |
497 |
select2_json = request_select2(app, resp)
|
498 |
|
assert len(select2_json['results']) == 10
|
|
498 |
assert len(select2_json['results']) == 1
|
|
499 |
assert select2_json['results'][0]['text'] == 'Roles'
|
|
500 |
assert len(select2_json['results'][0]['children']) == 10
|
499 |
501 |
assert select2_json['more'] is True
|
500 |
502 |
|
501 |
503 |
select2_json = request_select2(app, resp, fetch_all=True)
|
502 |
|
assert len(select2_json['results']) == 17
|
503 |
|
choices = [x['text'] for x in select2_json['results']]
|
|
504 |
choices = [x['text'] for k in select2_json['results'] for x in k.get('children') or (k,)]
|
504 |
505 |
assert choices == [
|
505 |
506 |
'Default organizational unit - Managers of role "simple role"',
|
506 |
507 |
'Default organizational unit - Roles - Default organizational unit',
|
... | ... | |
522 |
523 |
]
|
523 |
524 |
|
524 |
525 |
select2_json = request_select2(app, resp, term='user')
|
525 |
|
choices = [x['text'] for x in select2_json['results']]
|
526 |
|
assert choices == [
|
|
526 |
assert len(select2_json['results']) == 2
|
|
527 |
assert select2_json['results'][0]['text'] == 'Roles'
|
|
528 |
role_choices = [x['text'] for x in select2_json['results'][0]['children']]
|
|
529 |
assert role_choices == [
|
527 |
530 |
'Default organizational unit - Users - Default organizational unit',
|
528 |
531 |
'OU1 - Users - OU1',
|
529 |
532 |
'Manager of users',
|
|
533 |
]
|
|
534 |
assert select2_json['results'][1]['text'] == 'Users'
|
|
535 |
user_choices = [x['text'] for x in select2_json['results'][1]['children']]
|
|
536 |
assert user_choices == [
|
530 |
537 |
'Jôhn Dôe - user@example.net - user',
|
531 |
538 |
'super user - superuser@example.net - superuser',
|
532 |
539 |
]
|
533 |
540 |
assert select2_json['more'] is False
|
534 |
541 |
|
535 |
542 |
select2_json = request_select2(app, resp, term='Manager')
|
536 |
|
assert len(select2_json['results']) == 8
|
|
543 |
assert len(select2_json['results'][0]['children']) == 8
|
537 |
544 |
select2_json = request_select2(app, resp, term='Manager of')
|
538 |
|
assert len(select2_json['results']) == 7
|
|
545 |
assert len(select2_json['results'][0]['children']) == 7
|
539 |
546 |
select2_json = request_select2(app, resp, term='Manager of serv')
|
540 |
|
assert len(select2_json['results']) == 1
|
|
547 |
assert len(select2_json['results'][0]['children']) == 1
|
541 |
548 |
|
542 |
549 |
for i in range(25):
|
543 |
550 |
Role.objects.create(name=f'test_role_{i}')
|
544 |
551 |
select2_json = request_select2(app, resp, term='test_role_', fetch_all=True)
|
545 |
|
assert len(select2_json['results']) == 25
|
|
552 |
flat_results = [x for k in select2_json['results'] for x in k.get('children') or (k,)]
|
|
553 |
assert len(flat_results) == 25
|
546 |
554 |
|
547 |
555 |
for i in range(25):
|
548 |
556 |
User.objects.create(username=f'test_user_{i}')
|
549 |
557 |
select2_json = request_select2(app, resp, term='test_user_', fetch_all=True)
|
550 |
|
assert len(select2_json['results']) == 25
|
|
558 |
flat_results = [x for k in select2_json['results'] for x in k.get('children') or (k,)]
|
|
559 |
assert len(flat_results) == 25
|
551 |
560 |
|
552 |
561 |
for i in range(10):
|
553 |
562 |
Role.objects.create(name=f'test_xxx_{i}')
|
554 |
563 |
User.objects.create(username='test_xxx_10')
|
555 |
564 |
select2_json = request_select2(app, resp, term='test_xxx_')
|
556 |
|
assert len(select2_json['results']) == 11
|
|
565 |
flat_results = [x for k in select2_json['results'] for x in k.get('children') or (k,)]
|
|
566 |
assert len(flat_results) == 11
|
557 |
567 |
|
558 |
568 |
|
559 |
569 |
def test_role_members_user_role_add_remove(app, superuser, settings, simple_role, simple_user, role_ou1):
|
... | ... | |
561 |
571 |
resp = login(app, superuser, url)
|
562 |
572 |
|
563 |
573 |
select2_json = request_select2(app, resp, term='Jôhn')
|
564 |
|
assert len(select2_json['results']) == 1
|
|
574 |
assert len(select2_json['results'][0]['children']) == 1
|
565 |
575 |
form = resp.forms['add-member']
|
566 |
|
form['user_or_role'].force_value(select2_json['results'][0]['id'])
|
|
576 |
form['user_or_role'].force_value(select2_json['results'][0]['children'][0]['id'])
|
567 |
577 |
resp = form.submit().follow()
|
568 |
578 |
assert 'Jôhn Dôe' in resp.text
|
569 |
579 |
|
... | ... | |
576 |
586 |
assert data_pk_args == ['user_or_role']
|
577 |
587 |
|
578 |
588 |
select2_json = request_select2(app, resp, term='role_ou1')
|
579 |
|
assert len(select2_json['results']) == 1
|
|
589 |
assert len(select2_json['results'][0]['children']) == 1
|
580 |
590 |
form = resp.forms['add-member']
|
581 |
|
form['user_or_role'].force_value(select2_json['results'][0]['id'])
|
|
591 |
form['user_or_role'].force_value(select2_json['results'][0]['children'][0]['id'])
|
582 |
592 |
resp = form.submit().follow()
|
583 |
593 |
assert 'role_ou1' in resp.text
|
584 |
594 |
|
585 |
|
-
|