29 lines
859 B
Python
29 lines
859 B
Python
from __future__ import absolute_import
|
|
|
|
from django.contrib.auth import get_user_model
|
|
from django.test.utils import override_settings
|
|
from django.urls import reverse
|
|
|
|
from allauth.tests import TestCase
|
|
|
|
|
|
@override_settings(
|
|
CACHES={
|
|
"default": {
|
|
"BACKEND": "django.core.cache.backends.locmem.LocMemCache",
|
|
},
|
|
},
|
|
ACCOUNT_RATE_LIMITS={"reset_password_email": "1/m"},
|
|
)
|
|
class RateLimitTests(TestCase):
|
|
def test_case_insensitive_password_reset(self):
|
|
get_user_model().objects.create(email="a@b.com")
|
|
resp = self.client.post(
|
|
reverse("account_reset_password"), data={"email": "a@b.com"}
|
|
)
|
|
assert resp.status_code == 302
|
|
resp = self.client.post(
|
|
reverse("account_reset_password"), data={"email": "A@B.COM"}
|
|
)
|
|
assert resp.status_code == 429
|