##// END OF EJS Templates
quick repo list: public/private icon control should only control icons, not repo visibility
quick repo list: public/private icon control should only control icons, not repo visibility

File last commit:

r2741:a89d375c beta
r3284:c36fee21 beta
Show More
test_admin_users_groups.py
224 lines | 8.3 KiB | text/x-python | PythonLexer
/ rhodecode / tests / functional / test_admin_users_groups.py
Added CheckSessionFlash into init....
r1382 from rhodecode.tests import *
added tests for users_group and issue #373
r2064 from rhodecode.model.db import UsersGroup, UsersGroupToPerm, Permission
Added CheckSessionFlash into init....
r1382
TEST_USERS_GROUP = 'admins_test'
added tests for users_group and issue #373
r2064
Added CheckSessionFlash into init....
r1382 class TestAdminUsersGroupsController(TestController):
def test_index(self):
response = self.app.get(url('users_groups'))
# Test response...
def test_index_as_xml(self):
response = self.app.get(url('formatted_users_groups', format='xml'))
def test_create(self):
added test for non ascii repositories and fixed users_groups test
r1398 self.log_user()
Added CheckSessionFlash into init....
r1382 users_group_name = TEST_USERS_GROUP
response = self.app.post(url('users_groups'),
added tests for users_group and issue #373
r2064 {'users_group_name': users_group_name,
Added CheckSessionFlash into init....
r1382 'active':True})
response.follow()
self.checkSessionFlash(response,
'created users group %s' % TEST_USERS_GROUP)
def test_new(self):
response = self.app.get(url('new_users_group'))
def test_new_as_xml(self):
response = self.app.get(url('formatted_new_users_group', format='xml'))
def test_update(self):
response = self.app.put(url('users_group', id=1))
def test_update_browser_fakeout(self):
removed users_group controller in replace for model methods,...
r1436 response = self.app.post(url('users_group', id=1),
params=dict(_method='put'))
Added CheckSessionFlash into init....
r1382
def test_delete(self):
removed users_group controller in replace for model methods,...
r1436 self.log_user()
users_group_name = TEST_USERS_GROUP + 'another'
response = self.app.post(url('users_groups'),
{'users_group_name':users_group_name,
'active':True})
response.follow()
self.checkSessionFlash(response,
'created users group %s' % users_group_name)
commit less models...
r1749 gr = self.Session.query(UsersGroup)\
removed users_group controller in replace for model methods,...
r1436 .filter(UsersGroup.users_group_name ==
users_group_name).one()
response = self.app.delete(url('users_group', id=gr.users_group_id))
commit less models...
r1749 gr = self.Session.query(UsersGroup)\
removed users_group controller in replace for model methods,...
r1436 .filter(UsersGroup.users_group_name ==
users_group_name).scalar()
self.assertEqual(gr, None)
added tests for users_group and issue #373
r2064 def test_enable_repository_read_on_group(self):
self.log_user()
users_group_name = TEST_USERS_GROUP + 'another2'
response = self.app.post(url('users_groups'),
{'users_group_name': users_group_name,
RhodeCode now has a option to explicitly set forking permissions. ref #508...
r2709 'active': True})
added tests for users_group and issue #373
r2064 response.follow()
ug = UsersGroup.get_by_group_name(users_group_name)
self.checkSessionFlash(response,
'created users group %s' % users_group_name)
RhodeCode now has a option to explicitly set forking permissions. ref #508...
r2709 ## ENABLE REPO CREATE ON A GROUP
added tests for users_group and issue #373
r2064 response = self.app.put(url('users_group_perm', id=ug.users_group_id),
{'create_repo_perm': True})
response.follow()
ug = UsersGroup.get_by_group_name(users_group_name)
p = Permission.get_by_key('hg.create.repository')
RhodeCode now has a option to explicitly set forking permissions. ref #508...
r2709 p2 = Permission.get_by_key('hg.fork.none')
# check if user has this perms, they should be here since
# defaults are on
added tests for users_group and issue #373
r2064 perms = UsersGroupToPerm.query()\
.filter(UsersGroupToPerm.users_group == ug).all()
RhodeCode now has a option to explicitly set forking permissions. ref #508...
r2709
added tests for users_group and issue #373
r2064 self.assertEqual(
RhodeCode now has a option to explicitly set forking permissions. ref #508...
r2709 [[x.users_group_id, x.permission_id, ] for x in perms],
[[ug.users_group_id, p.permission_id],
[ug.users_group_id, p2.permission_id]]
)
## DISABLE REPO CREATE ON A GROUP
response = self.app.put(url('users_group_perm', id=ug.users_group_id),
{})
response.follow()
ug = UsersGroup.get_by_group_name(users_group_name)
p = Permission.get_by_key('hg.create.none')
p2 = Permission.get_by_key('hg.fork.none')
# check if user has this perms, they should be here since
# defaults are on
perms = UsersGroupToPerm.query()\
.filter(UsersGroupToPerm.users_group == ug).all()
self.assertEqual(
fixed test from failing under different conditions
r2741 sorted([[x.users_group_id, x.permission_id, ] for x in perms]),
sorted([[ug.users_group_id, p.permission_id],
[ug.users_group_id, p2.permission_id]])
added tests for users_group and issue #373
r2064 )
# DELETE !
ug = UsersGroup.get_by_group_name(users_group_name)
ugid = ug.users_group_id
response = self.app.delete(url('users_group', id=ug.users_group_id))
response = response.follow()
gr = self.Session.query(UsersGroup)\
.filter(UsersGroup.users_group_name ==
users_group_name).scalar()
self.assertEqual(gr, None)
p = Permission.get_by_key('hg.create.repository')
perms = UsersGroupToPerm.query()\
.filter(UsersGroupToPerm.users_group_id == ugid).all()
RhodeCode now has a option to explicitly set forking permissions. ref #508...
r2709 perms = [[x.users_group_id,
x.permission_id, ] for x in perms]
self.assertEqual(
perms,
[]
)
def test_enable_repository_fork_on_group(self):
self.log_user()
users_group_name = TEST_USERS_GROUP + 'another2'
response = self.app.post(url('users_groups'),
{'users_group_name': users_group_name,
'active': True})
response.follow()
ug = UsersGroup.get_by_group_name(users_group_name)
self.checkSessionFlash(response,
'created users group %s' % users_group_name)
## ENABLE REPO CREATE ON A GROUP
response = self.app.put(url('users_group_perm', id=ug.users_group_id),
{'fork_repo_perm': True})
response.follow()
ug = UsersGroup.get_by_group_name(users_group_name)
p = Permission.get_by_key('hg.create.none')
p2 = Permission.get_by_key('hg.fork.repository')
# check if user has this perms, they should be here since
# defaults are on
perms = UsersGroupToPerm.query()\
.filter(UsersGroupToPerm.users_group == ug).all()
self.assertEqual(
[[x.users_group_id, x.permission_id, ] for x in perms],
[[ug.users_group_id, p.permission_id],
[ug.users_group_id, p2.permission_id]]
)
## DISABLE REPO CREATE ON A GROUP
response = self.app.put(url('users_group_perm', id=ug.users_group_id),
{})
response.follow()
ug = UsersGroup.get_by_group_name(users_group_name)
p = Permission.get_by_key('hg.create.none')
p2 = Permission.get_by_key('hg.fork.none')
# check if user has this perms, they should be here since
# defaults are on
perms = UsersGroupToPerm.query()\
.filter(UsersGroupToPerm.users_group == ug).all()
self.assertEqual(
[[x.users_group_id, x.permission_id, ] for x in perms],
[[ug.users_group_id, p.permission_id],
[ug.users_group_id, p2.permission_id]]
)
# DELETE !
ug = UsersGroup.get_by_group_name(users_group_name)
ugid = ug.users_group_id
response = self.app.delete(url('users_group', id=ug.users_group_id))
response = response.follow()
gr = self.Session.query(UsersGroup)\
.filter(UsersGroup.users_group_name ==
users_group_name).scalar()
self.assertEqual(gr, None)
p = Permission.get_by_key('hg.fork.repository')
perms = UsersGroupToPerm.query()\
.filter(UsersGroupToPerm.users_group_id == ugid).all()
perms = [[x.users_group_id,
x.permission_id, ] for x in perms]
added tests for users_group and issue #373
r2064 self.assertEqual(
perms,
[]
)
Added CheckSessionFlash into init....
r1382
def test_delete_browser_fakeout(self):
removed users_group controller in replace for model methods,...
r1436 response = self.app.post(url('users_group', id=1),
params=dict(_method='delete'))
Added CheckSessionFlash into init....
r1382
def test_show(self):
response = self.app.get(url('users_group', id=1))
def test_show_as_xml(self):
response = self.app.get(url('formatted_users_group', id=1, format='xml'))
def test_edit(self):
response = self.app.get(url('edit_users_group', id=1))
def test_edit_as_xml(self):
response = self.app.get(url('formatted_edit_users_group', id=1, format='xml'))
def test_assign_members(self):
pass
def test_add_create_permission(self):
pass
def test_revoke_members(self):
pass