|
a/Allura/allura/tests/functional/test_admin.py |
|
b/Allura/allura/tests/functional/test_admin.py |
|
... |
|
... |
576 |
dev_holder = r.html.find('table',{'id':'usergroup_admin'}).findAll('tr')[2]
|
576 |
dev_holder = r.html.find('table',{'id':'usergroup_admin'}).findAll('tr')[2]
|
577 |
mem_holder = r.html.find('table',{'id':'usergroup_admin'}).findAll('tr')[3]
|
577 |
mem_holder = r.html.find('table',{'id':'usergroup_admin'}).findAll('tr')[3]
|
578 |
# neither group has update permission
|
578 |
# neither group has update permission
|
579 |
assert dev_holder.findAll('ul')[1].findAll('li')[2]['class'] == "no"
|
579 |
assert dev_holder.findAll('ul')[1].findAll('li')[2]['class'] == "no"
|
580 |
assert mem_holder.findAll('ul')[1].findAll('li')[2]['class'] == "no"
|
580 |
assert mem_holder.findAll('ul')[1].findAll('li')[2]['class'] == "no"
|
|
|
581 |
|
|
|
582 |
def test_permission_inherit(self):
|
|
|
583 |
r = self.app.get('/admin/groups/')
|
|
|
584 |
admin_holder = r.html.find('table',{'id':'usergroup_admin'}).findAll('tr')[1]
|
|
|
585 |
admin_id = admin_holder['data-group']
|
|
|
586 |
mem_holder = r.html.find('table',{'id':'usergroup_admin'}).findAll('tr')[3]
|
|
|
587 |
mem_id = mem_holder['data-group']
|
|
|
588 |
anon_holder = r.html.find('table',{'id':'usergroup_admin'}).findAll('tr')[5]
|
|
|
589 |
anon_id = anon_holder['data-group']
|
|
|
590 |
#first remove create from Admin so we can see it inherit
|
|
|
591 |
r = self.app.post('/admin/groups/change_perm', params={
|
|
|
592 |
'role_id': admin_id,
|
|
|
593 |
'permission': 'create',
|
|
|
594 |
'allow': 'false'})
|
|
|
595 |
# updates to anon inherit up
|
|
|
596 |
r = self.app.post('/admin/groups/change_perm', params={
|
|
|
597 |
'role_id': anon_id,
|
|
|
598 |
'permission': 'create',
|
|
|
599 |
'allow': 'true'})
|
|
|
600 |
assert {u'text': u'Inherited permission create from Anonymous', u'has': u'inherit', u'name': u'create'} in r.json[admin_id]
|
|
|
601 |
assert {u'text': u'Inherited permission create from Anonymous', u'has': u'inherit', u'name': u'create'} in r.json[mem_id]
|
|
|
602 |
assert {u'text': u'Has permission create', u'has': u'yes', u'name': u'create'} in r.json[anon_id]
|
|
|
603 |
r = self.app.post('/admin/groups/change_perm', params={
|
|
|
604 |
'role_id': anon_id,
|
|
|
605 |
'permission': 'create',
|
|
|
606 |
'allow': 'false'})
|
|
|
607 |
assert {u'text': u'Does not have permission create', u'has': u'no', u'name': u'create'} in r.json[admin_id]
|
|
|
608 |
assert {u'text': u'Does not have permission create', u'has': u'no', u'name': u'create'} in r.json[mem_id]
|
|
|
609 |
assert {u'text': u'Does not have permission create', u'has': u'no', u'name': u'create'} in r.json[anon_id]
|
|
|
610 |
# updates to Member inherit up
|
|
|
611 |
r = self.app.post('/admin/groups/change_perm', params={
|
|
|
612 |
'role_id': mem_id,
|
|
|
613 |
'permission': 'create',
|
|
|
614 |
'allow': 'true'})
|
|
|
615 |
assert {u'text': u'Inherited permission create from Member', u'has': u'inherit', u'name': u'create'} in r.json[admin_id]
|
|
|
616 |
assert {u'text': u'Has permission create', u'has': u'yes', u'name': u'create'} in r.json[mem_id]
|
|
|
617 |
assert {u'text': u'Does not have permission create', u'has': u'no', u'name': u'create'} in r.json[anon_id]
|
|
|
618 |
r = self.app.post('/admin/groups/change_perm', params={
|
|
|
619 |
'role_id': mem_id,
|
|
|
620 |
'permission': 'create',
|
|
|
621 |
'allow': 'false'})
|
|
|
622 |
assert {u'text': u'Does not have permission create', u'has': u'no', u'name': u'create'} in r.json[admin_id]
|
|
|
623 |
assert {u'text': u'Does not have permission create', u'has': u'no', u'name': u'create'} in r.json[mem_id]
|
|
|
624 |
assert {u'text': u'Does not have permission create', u'has': u'no', u'name': u'create'} in r.json[anon_id]
|