mirror of
https://github.com/cookiecutter/cookiecutter-django.git
synced 2025-07-11 08:32:21 +03:00
Merge pull request #2949 from thorrak/add_test
This commit is contained in:
commit
e293d8c00e
|
@ -1,8 +1,12 @@
|
||||||
import pytest
|
import pytest
|
||||||
|
from django.contrib import messages
|
||||||
from django.contrib.auth.models import AnonymousUser
|
from django.contrib.auth.models import AnonymousUser
|
||||||
|
from django.contrib.messages.middleware import MessageMiddleware
|
||||||
|
from django.contrib.sessions.middleware import SessionMiddleware
|
||||||
from django.http.response import Http404
|
from django.http.response import Http404
|
||||||
from django.test import RequestFactory
|
from django.test import RequestFactory
|
||||||
|
|
||||||
|
from {{ cookiecutter.project_slug }}.users.forms import UserChangeForm
|
||||||
from {{ cookiecutter.project_slug }}.users.models import User
|
from {{ cookiecutter.project_slug }}.users.models import User
|
||||||
from {{ cookiecutter.project_slug }}.users.tests.factories import UserFactory
|
from {{ cookiecutter.project_slug }}.users.tests.factories import UserFactory
|
||||||
from {{ cookiecutter.project_slug }}.users.views import (
|
from {{ cookiecutter.project_slug }}.users.views import (
|
||||||
|
@ -41,6 +45,28 @@ class TestUserUpdateView:
|
||||||
|
|
||||||
assert view.get_object() == user
|
assert view.get_object() == user
|
||||||
|
|
||||||
|
def test_form_valid(self, user: User, rf: RequestFactory):
|
||||||
|
view = UserUpdateView()
|
||||||
|
request = rf.get("/fake-url/")
|
||||||
|
|
||||||
|
# Add the session/message middleware to the request
|
||||||
|
SessionMiddleware().process_request(request)
|
||||||
|
MessageMiddleware().process_request(request)
|
||||||
|
request.user = user
|
||||||
|
|
||||||
|
view.request = request
|
||||||
|
|
||||||
|
# Initialize the form
|
||||||
|
form = UserChangeForm()
|
||||||
|
form.cleaned_data = []
|
||||||
|
view.form_valid(form)
|
||||||
|
|
||||||
|
found_message = False
|
||||||
|
for message in messages.get_messages(request):
|
||||||
|
assert message.message == "Information successfully updated"
|
||||||
|
found_message = True
|
||||||
|
assert found_message
|
||||||
|
|
||||||
|
|
||||||
class TestUserRedirectView:
|
class TestUserRedirectView:
|
||||||
def test_get_redirect_url(self, user: User, rf: RequestFactory):
|
def test_get_redirect_url(self, user: User, rf: RequestFactory):
|
||||||
|
|
|
@ -31,7 +31,7 @@ class UserUpdateView(LoginRequiredMixin, UpdateView):
|
||||||
|
|
||||||
def form_valid(self, form):
|
def form_valid(self, form):
|
||||||
messages.add_message(
|
messages.add_message(
|
||||||
self.request, messages.INFO, _("Infos successfully updated")
|
self.request, messages.INFO, _("Information successfully updated")
|
||||||
)
|
)
|
||||||
return super().form_valid(form)
|
return super().form_valid(form)
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue
Block a user