Я изучаю тестирование в Django и имею представление, которое я хочу проверить. Это мнение должно быть доступно только сотрудникам. Предположим, что точка зрения:Как проверить, что просмотр доступен только пользователям пользователей в Django
def staff_users(request):
....
# some logic
return HttpResponseRedirect('/repositories/')
если запрос приходит от пользователей персонала, он должен перенаправить к хранилищам иначе я должен получить что-то вроде permission denied
. Я начинаю с чего-то вроде tests.py
.
def test_request_object(self):
self.user = User.objects.create_user(
username='abc', email='[email protected]', password='1234')
request = HttpRequest()
# User send a request to access repositories
response = staff_users(request)
self.assertIsNone(response)
Проблема здесь я не связывая мой объект запроса с любыми пользователями, и я должен знать о from django.contrib.admin.views.decorators import staff_member_required
, но не знаете, как использовать их здесь. Может ли кто-нибудь сказать мне, как мне проверить, view
должен быть доступен только staff users
?
Пожалуйста, также показывают стандартный способ сделать полную отделку: '@wraps (функция)' перед 'Защитой wrap (request, ... ' – Pynchia
Но как насчет тестовых примеров, как мне связать мой запрос с пользователями или обычными пользователями? – python
Если вы видите мою «тестовую функцию», я использую 'request = HttpRequest()' для получения объекта запроса. Как связать объект запроса с персоналом или обычными пользователями? – python