##// END OF EJS Templates
moved out password reset tasks from celery, it doesn't make any sense to keep them there, additionally they are broken...
moved out password reset tasks from celery, it doesn't make any sense to keep them there, additionally they are broken in when executing _(), and url() calls. This fixes issue #572

File last commit:

r2741:a89d375c beta
r3401:5c310b7b 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