This commit is contained in:
@@ -134,26 +134,35 @@ class TestUpdatedMethods:
|
||||
|
||||
def test_assign_role_to_user_without_creator(self, db_session, test_users, community_without_creator):
|
||||
"""Тест назначения роли пользователю в сообществе без создателя"""
|
||||
# Назначаем роль
|
||||
result = assign_role_to_user(test_users[0].id, "reader", community_without_creator.id)
|
||||
# Назначаем роль с передачей сессии для консистентности
|
||||
result = assign_role_to_user(test_users[0].id, "reader", community_without_creator.id, session=db_session)
|
||||
assert result is True
|
||||
|
||||
# Проверяем что роль назначена
|
||||
roles = get_user_roles_in_community(test_users[0].id, community_without_creator.id)
|
||||
# Проверяем что роль назначена с передачей сессии
|
||||
roles = get_user_roles_in_community(test_users[0].id, community_without_creator.id, session=db_session)
|
||||
assert "reader" in roles
|
||||
|
||||
def test_remove_role_from_user_without_creator(self, db_session, test_users, community_without_creator):
|
||||
"""Тест удаления роли пользователя в сообществе без создателя"""
|
||||
# Сначала назначаем роль
|
||||
assign_role_to_user(test_users[0].id, "reader", community_without_creator.id)
|
||||
assign_role_to_user(test_users[0].id, "author", community_without_creator.id)
|
||||
# Сначала назначаем роль с передачей сессии
|
||||
result1 = assign_role_to_user(test_users[0].id, "reader", community_without_creator.id, session=db_session)
|
||||
result2 = assign_role_to_user(test_users[0].id, "author", community_without_creator.id, session=db_session)
|
||||
|
||||
# Проверяем что роли назначены
|
||||
assert result1 is True, "Роль reader не была назначена"
|
||||
assert result2 is True, "Роль author не была назначена"
|
||||
|
||||
# Удаляем одну роль
|
||||
result = remove_role_from_user(test_users[0].id, "reader", community_without_creator.id)
|
||||
# Проверяем что роли действительно назначены
|
||||
roles_before = get_user_roles_in_community(test_users[0].id, community_without_creator.id, session=db_session)
|
||||
assert "reader" in roles_before, f"Роль reader не найдена в {roles_before}"
|
||||
assert "author" in roles_before, f"Роль author не найдена в {roles_before}"
|
||||
|
||||
# Удаляем одну роль с передачей сессии
|
||||
result = remove_role_from_user(test_users[0].id, "reader", community_without_creator.id, session=db_session)
|
||||
assert result is True
|
||||
|
||||
# Проверяем что роль удалена
|
||||
roles = get_user_roles_in_community(test_users[0].id, community_without_creator.id)
|
||||
# Проверяем что роль удалена с передачей сессии
|
||||
roles = get_user_roles_in_community(test_users[0].id, community_without_creator.id, session=db_session)
|
||||
assert "reader" not in roles
|
||||
assert "author" in roles
|
||||
|
||||
|
||||
Reference in New Issue
Block a user