mirror of
https://github.com/cookiecutter/cookiecutter-django.git
synced 2025-02-23 23:12:57 +03:00
Add a test to cover DJANGO_ADMIN_FORCE_ALLAUTH
(#4790)
* Add a test to cover `DJANGO_ADMIN_FORCE_ALLAUTH` * Remove unused fixtures * Test redirect url
This commit is contained in:
parent
5665b617fc
commit
bc06b0da59
|
@ -1,4 +1,10 @@
|
||||||
|
from importlib import reload
|
||||||
|
|
||||||
|
import pytest
|
||||||
|
from django.contrib import admin
|
||||||
|
from django.contrib.auth.models import AnonymousUser
|
||||||
from django.urls import reverse
|
from django.urls import reverse
|
||||||
|
from pytest_django.asserts import assertRedirects
|
||||||
|
|
||||||
from {{ cookiecutter.project_slug }}.users.models import User
|
from {{ cookiecutter.project_slug }}.users.models import User
|
||||||
|
|
||||||
|
@ -47,3 +53,25 @@ class TestUserAdmin:
|
||||||
url = reverse("admin:users_user_change", kwargs={"object_id": user.pk})
|
url = reverse("admin:users_user_change", kwargs={"object_id": user.pk})
|
||||||
response = admin_client.get(url)
|
response = admin_client.get(url)
|
||||||
assert response.status_code == 200
|
assert response.status_code == 200
|
||||||
|
|
||||||
|
@pytest.fixture
|
||||||
|
def force_allauth(self, settings):
|
||||||
|
settings.DJANGO_ADMIN_FORCE_ALLAUTH = True
|
||||||
|
# Reload the admin module to apply the setting change
|
||||||
|
import {{ cookiecutter.project_slug }}.users.admin as users_admin # pylint: disable=import-outside-toplevel
|
||||||
|
|
||||||
|
try:
|
||||||
|
reload(users_admin)
|
||||||
|
except admin.sites.AlreadyRegistered:
|
||||||
|
pass
|
||||||
|
|
||||||
|
@pytest.mark.django_db
|
||||||
|
@pytest.mark.usefixtures("force_allauth")
|
||||||
|
def test_allauth_login(self, rf, settings):
|
||||||
|
request = rf.get("/fake-url")
|
||||||
|
request.user = AnonymousUser()
|
||||||
|
response = admin.site.login(request)
|
||||||
|
|
||||||
|
# The `admin` login view should redirect to the `allauth` login view
|
||||||
|
target_url = reverse(settings.LOGIN_URL) + "?next=" + request.path
|
||||||
|
assertRedirects(response, target_url, fetch_redirect_response=False)
|
||||||
|
|
Loading…
Reference in New Issue
Block a user