##// END OF EJS Templates
repo rescann should detach forks of zombie repos,...
repo rescann should detach forks of zombie repos, this way we ensure we do proper cleanup of such repos.

File last commit:

r3565:a8f2d78d beta
r3694:34093903 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 *
Mads Kiilerich
further cleanup of UsersGroup...
r3417 from rhodecode.model.db import UserGroup, UserGroupToPerm, Permission
Added CheckSessionFlash into init....
r1382
Mads Kiilerich
further cleanup of UsersGroup...
r3417 TEST_USER_GROUP = 'admins_test'
Added CheckSessionFlash into init....
r1382
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()
Mads Kiilerich
further cleanup of UsersGroup...
r3417 users_group_name = TEST_USER_GROUP
Added CheckSessionFlash into init....
r1382 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,
Mads Kiilerich
consistently capitalize initial letter in flash messages
r3565 'Created user group %s' % TEST_USER_GROUP)
Added CheckSessionFlash into init....
r1382
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()
Mads Kiilerich
further cleanup of UsersGroup...
r3417 users_group_name = TEST_USER_GROUP + 'another'
removed users_group controller in replace for model methods,...
r1436 response = self.app.post(url('users_groups'),
{'users_group_name':users_group_name,
'active':True})
response.follow()
self.checkSessionFlash(response,
Mads Kiilerich
consistently capitalize initial letter in flash messages
r3565 'Created user group %s' % users_group_name)
removed users_group controller in replace for model methods,...
r1436
Mads Kiilerich
further cleanup of UsersGroup...
r3417 gr = self.Session.query(UserGroup)\
.filter(UserGroup.users_group_name ==
removed users_group controller in replace for model methods,...
r1436 users_group_name).one()
response = self.app.delete(url('users_group', id=gr.users_group_id))
Mads Kiilerich
further cleanup of UsersGroup...
r3417 gr = self.Session.query(UserGroup)\
.filter(UserGroup.users_group_name ==
removed users_group controller in replace for model methods,...
r1436 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()
Mads Kiilerich
further cleanup of UsersGroup...
r3417 users_group_name = TEST_USER_GROUP + 'another2'
added tests for users_group and issue #373
r2064 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()
Mads Kiilerich
further cleanup of UsersGroup...
r3417 ug = UserGroup.get_by_group_name(users_group_name)
added tests for users_group and issue #373
r2064 self.checkSessionFlash(response,
Mads Kiilerich
consistently capitalize initial letter in flash messages
r3565 'Created user 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()
Mads Kiilerich
further cleanup of UsersGroup...
r3417 ug = UserGroup.get_by_group_name(users_group_name)
added tests for users_group and issue #373
r2064 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
Mads Kiilerich
further cleanup of UsersGroup...
r3417 perms = UserGroupToPerm.query()\
.filter(UserGroupToPerm.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()
Mads Kiilerich
further cleanup of UsersGroup...
r3417 ug = UserGroup.get_by_group_name(users_group_name)
RhodeCode now has a option to explicitly set forking permissions. ref #508...
r2709 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
Mads Kiilerich
further cleanup of UsersGroup...
r3417 perms = UserGroupToPerm.query()\
.filter(UserGroupToPerm.users_group == ug).all()
RhodeCode now has a option to explicitly set forking permissions. ref #508...
r2709
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 !
Mads Kiilerich
further cleanup of UsersGroup...
r3417 ug = UserGroup.get_by_group_name(users_group_name)
added tests for users_group and issue #373
r2064 ugid = ug.users_group_id
response = self.app.delete(url('users_group', id=ug.users_group_id))
response = response.follow()
Mads Kiilerich
further cleanup of UsersGroup...
r3417 gr = self.Session.query(UserGroup)\
.filter(UserGroup.users_group_name ==
added tests for users_group and issue #373
r2064 users_group_name).scalar()
self.assertEqual(gr, None)
p = Permission.get_by_key('hg.create.repository')
Mads Kiilerich
further cleanup of UsersGroup...
r3417 perms = UserGroupToPerm.query()\
.filter(UserGroupToPerm.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()
Mads Kiilerich
further cleanup of UsersGroup...
r3417 users_group_name = TEST_USER_GROUP + 'another2'
RhodeCode now has a option to explicitly set forking permissions. ref #508...
r2709 response = self.app.post(url('users_groups'),
{'users_group_name': users_group_name,
'active': True})
response.follow()
Mads Kiilerich
further cleanup of UsersGroup...
r3417 ug = UserGroup.get_by_group_name(users_group_name)
RhodeCode now has a option to explicitly set forking permissions. ref #508...
r2709 self.checkSessionFlash(response,
Mads Kiilerich
consistently capitalize initial letter in flash messages
r3565 'Created user group %s' % users_group_name)
RhodeCode now has a option to explicitly set forking permissions. ref #508...
r2709 ## 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()
Mads Kiilerich
further cleanup of UsersGroup...
r3417 ug = UserGroup.get_by_group_name(users_group_name)
RhodeCode now has a option to explicitly set forking permissions. ref #508...
r2709 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
Mads Kiilerich
further cleanup of UsersGroup...
r3417 perms = UserGroupToPerm.query()\
.filter(UserGroupToPerm.users_group == ug).all()
RhodeCode now has a option to explicitly set forking permissions. ref #508...
r2709
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()
Mads Kiilerich
further cleanup of UsersGroup...
r3417 ug = UserGroup.get_by_group_name(users_group_name)
RhodeCode now has a option to explicitly set forking permissions. ref #508...
r2709 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
Mads Kiilerich
further cleanup of UsersGroup...
r3417 perms = UserGroupToPerm.query()\
.filter(UserGroupToPerm.users_group == ug).all()
RhodeCode now has a option to explicitly set forking permissions. ref #508...
r2709
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 !
Mads Kiilerich
further cleanup of UsersGroup...
r3417 ug = UserGroup.get_by_group_name(users_group_name)
RhodeCode now has a option to explicitly set forking permissions. ref #508...
r2709 ugid = ug.users_group_id
response = self.app.delete(url('users_group', id=ug.users_group_id))
response = response.follow()
Mads Kiilerich
further cleanup of UsersGroup...
r3417 gr = self.Session.query(UserGroup)\
.filter(UserGroup.users_group_name ==
RhodeCode now has a option to explicitly set forking permissions. ref #508...
r2709 users_group_name).scalar()
self.assertEqual(gr, None)
p = Permission.get_by_key('hg.fork.repository')
Mads Kiilerich
further cleanup of UsersGroup...
r3417 perms = UserGroupToPerm.query()\
.filter(UserGroupToPerm.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]
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