У меня есть вид, который оформлен так:
@check_has_permission('is_manager')
def view():
pass
и декоратор выглядит примерно так:
def check_has_permission(group=None):
def can_user_access(user):
if user.is_authenticated():
if group == 'is_staff':
return user.is_staff()
elif group == 'is_admin':
return (
user.is_admin() or
user.is_staff()
)
elif group == 'is_manager':
return (
user.is_manager() or
user.is_admin() or
user.is_staff()
)
return False
return user_passes_test(can_user_access, login_url=login_url)
Как мне написать модульный тест, чтобы убедиться, что представление украшено check_has_permission с группой 'is_manager'?
Я надеюсь, что смогу написать набор тестов для самого декоратора, тогда мне нужно только подтвердить, что я вызываю правильную группу для каждого представления, которое он украшает.