remove g_admin fixture

This commit is contained in:
Max Erenberg 2021-08-19 16:40:51 +00:00
parent d20ae05a55
commit ab53a5515a
4 changed files with 39 additions and 49 deletions

View File

@ -111,7 +111,7 @@ def test_api_add_member_to_group(client, create_group_result, ldap_user):
assert data['members'] == []
def test_api_group_auxiliary(cfg, client, ldap_user):
def test_api_group_auxiliary(cfg, client, ldap_user, g_admin_ctx):
# Make sure that syscom has auxiliary mailing lists and groups
# defined in ceod_test_local.ini.
# Also make sure that the auxiliary mailing lists are defined in
@ -124,14 +124,15 @@ def test_api_group_auxiliary(cfg, client, ldap_user):
group_names = ['syscom'] + aux_groups
groups = []
for group_name in group_names:
group = Group(
cn=group_name,
gid_number=min_uid,
)
group.add_to_ldap()
groups.append(group)
min_uid += 1
with g_admin_ctx():
for group_name in group_names:
group = Group(
cn=group_name,
gid_number=min_uid,
)
group.add_to_ldap()
groups.append(group)
min_uid += 1
uid = ldap_user.uid
_, data = client.post(f'/api/groups/syscom/members/{uid}')
@ -158,5 +159,6 @@ def test_api_group_auxiliary(cfg, client, ldap_user):
]
assert data == expected
for group in groups:
group.remove_from_ldap()
with g_admin_ctx():
for group in groups:
group.remove_from_ldap()

View File

@ -4,7 +4,7 @@ from ceo_common.errors import GroupNotFoundError, UserAlreadyInGroupError, \
UserNotInGroupError
def test_group_add_to_ldap(simple_group, ldap_srv, g_admin):
def test_group_add_to_ldap(simple_group, ldap_srv):
group = simple_group
group.add_to_ldap()
@ -16,7 +16,7 @@ def test_group_add_to_ldap(simple_group, ldap_srv, g_admin):
ldap_srv.get_group(group.cn)
def test_group_members(ldap_group, ldap_srv, g_admin):
def test_group_members(ldap_group, ldap_srv):
group = ldap_group
group.add_member('member1')
@ -38,21 +38,24 @@ def test_group_members(ldap_group, ldap_srv, g_admin):
group.remove_member('member1')
def test_group_to_dict(ldap_group, ldap_user):
def test_group_to_dict(ldap_group, ldap_user, g_admin_ctx):
group = ldap_group
expected = {
'cn': group.cn,
'description': group.user_cn,
'gid_number': group.gid_number,
'members': [],
}
assert group.to_dict() == expected
with g_admin_ctx():
# we need LDAP credentials because to_dict() might make calls
# to LDAP
expected = {
'cn': group.cn,
'description': group.user_cn,
'gid_number': group.gid_number,
'members': [],
}
assert group.to_dict() == expected
group.add_member(ldap_user.uid)
expected['members'].append({
'uid': ldap_user.uid,
'cn': ldap_user.cn,
'program': ldap_user.program,
})
assert group.to_dict() == expected
group.add_member(ldap_user.uid)
expected['members'].append({
'uid': ldap_user.uid,
'cn': ldap_user.cn,
'program': ldap_user.program,
})
assert group.to_dict() == expected

View File

@ -7,7 +7,7 @@ from ceo_common.errors import UserNotFoundError, UserAlreadyExistsError
from ceod.model import User
def test_user_add_to_ldap(cfg, ldap_srv, simple_user, g_admin):
def test_user_add_to_ldap(cfg, ldap_srv, simple_user):
user = simple_user
min_id = cfg.get('members_min_id')
user.add_to_ldap()
@ -23,7 +23,7 @@ def test_user_add_to_ldap(cfg, ldap_srv, simple_user, g_admin):
ldap_srv.get_user(user.uid)
def test_club_add_to_ldap(cfg, ldap_srv, simple_club, g_admin):
def test_club_add_to_ldap(cfg, ldap_srv, simple_club):
club = simple_club
min_id = cfg.get('clubs_min_id')
club.add_to_ldap()
@ -33,7 +33,7 @@ def test_club_add_to_ldap(cfg, ldap_srv, simple_club, g_admin):
club.remove_from_ldap()
def test_get_display_info_for_users(cfg, ldap_srv, g_admin):
def test_get_display_info_for_users(cfg, ldap_srv):
user1 = User(
uid='test_1',
cn='Test One',
@ -101,7 +101,7 @@ def test_user_forwarding_addresses(cfg, ldap_user):
assert not os.path.isdir(user.home_directory)
def test_user_terms(ldap_user, ldap_srv, g_admin):
def test_user_terms(ldap_user, ldap_srv):
user = ldap_user
user.add_terms(['f2021'])
@ -113,7 +113,7 @@ def test_user_terms(ldap_user, ldap_srv, g_admin):
assert ldap_srv.get_user(user.uid).non_member_terms == user.non_member_terms
def test_user_positions(ldap_user, ldap_srv, g_admin):
def test_user_positions(ldap_user, ldap_srv):
user = ldap_user
user.add_position('treasurer')
@ -135,7 +135,7 @@ def test_user_change_password(krb_user):
user.change_password('new_password')
def test_login_shell(ldap_user, ldap_srv, g_admin):
def test_login_shell(ldap_user, ldap_srv):
user = ldap_user
user.replace_login_shell('/bin/sh')

View File

@ -221,21 +221,6 @@ def app(
return app
@pytest.fixture
def g_admin(cfg, ceod_admin_creds, app):
"""
Store the creds for ceod/admin in flask.g.
This fixture should be used any time LDAP is modified via the LDAPService.
"""
admin_principal = cfg.get('ldap_admin_principal')
with app.test_request_context():
try:
flask.g.sasl_user = admin_principal
yield
finally:
flask.g.pop('sasl_user')
@pytest.fixture(scope='session')
def mocks_for_create_user():
with patch.object(utils, 'gen_password') as gen_password_mock, \