4.66.1
Some checks failed
Build-Release-Image / Build-Image (linux/arm64) (push) Failing after 7m6s
Build-Release-Image / Build-Image (linux/amd64) (push) Has been cancelled
Build-Release-Image / Merge-Images (push) Has been cancelled
Build-Release-Image / Create-Release (push) Has been cancelled
Build-Release-Image / Notify (push) Has been cancelled

This commit is contained in:
2025-03-04 12:00:09 +00:00
parent d09b3b992c
commit 89fad50529
8 changed files with 35 additions and 30 deletions

View File

@ -1,5 +1,3 @@
from flask import g
from app import config
from app.alias_suffix import signer
from app.alias_utils import delete_alias
@ -7,7 +5,7 @@ from app.config import EMAIL_DOMAIN, MAX_NB_EMAIL_FREE_PLAN
from app.db import Session
from app.models import Alias, CustomDomain, Mailbox, AliasUsedOn
from app.utils import random_word
from tests.utils import login, random_domain, random_token
from tests.utils import fix_rate_limit_after_request, login, random_domain, random_token
def test_v2(flask_client):
@ -276,7 +274,7 @@ def test_too_many_requests(flask_client):
# to make flask-limiter work with unit test
# https://github.com/alisaifee/flask-limiter/issues/147#issuecomment-642683820
g._rate_limiting_complete = False
fix_rate_limit_after_request()
else:
# last request
assert r.status_code == 429

View File

@ -1,12 +1,12 @@
import uuid
from flask import url_for, g
from flask import url_for
from app import config
from app.config import EMAIL_DOMAIN, MAX_NB_EMAIL_FREE_PLAN
from app.db import Session
from app.models import Alias, CustomDomain, AliasUsedOn
from tests.utils import login, random_domain
from tests.utils import fix_rate_limit_after_request, login, random_domain
def test_with_hostname(flask_client):
@ -133,7 +133,7 @@ def test_too_many_requests(flask_client):
)
# to make flask-limiter work with unit test
# https://github.com/alisaifee/flask-limiter/issues/147#issuecomment-642683820
g._rate_limiting_complete = False
fix_rate_limit_after_request()
else:
# last request
assert r.status_code == 429

View File

@ -1,6 +1,6 @@
from random import random
from flask import url_for, g
from flask import url_for
from app import config
from app.alias_suffix import (
@ -22,7 +22,12 @@ from app.models import (
DailyMetric,
)
from app.utils import random_word
from tests.utils import login, random_domain, create_new_user
from tests.utils import (
fix_rate_limit_after_request,
login,
random_domain,
create_new_user,
)
def test_add_alias_success(flask_client):
@ -388,7 +393,7 @@ def test_too_many_requests(flask_client):
# to make flask-limiter work with unit test
# https://github.com/alisaifee/flask-limiter/issues/147#issuecomment-642683820
g._rate_limiting_complete = False
fix_rate_limit_after_request()
else:
# last request
assert r.status_code == 429

View File

@ -1,10 +1,10 @@
from flask import url_for, g
from flask import url_for
from app import config
from app.models import (
Alias,
)
from tests.utils import login
from tests.utils import fix_rate_limit_after_request, login
def test_create_random_alias_success(flask_client):
@ -34,7 +34,7 @@ def test_too_many_requests(flask_client):
# to make flask-limiter work with unit test
# https://github.com/alisaifee/flask-limiter/issues/147#issuecomment-642683820
g._rate_limiting_complete = False
fix_rate_limit_after_request()
else:
# last request
assert r.status_code == 429

View File

@ -1,12 +1,10 @@
from http import HTTPStatus
from random import Random
from flask import g
from app import config
from app.extensions import limiter
from tests.conftest import app as test_app
from tests.utils import login
from tests.utils import fix_rate_limit_after_request, login
# IMPORTANT NOTICE
# ----------------
@ -34,10 +32,6 @@ def random_ip() -> str:
return ".".join(octets)
def fix_rate_limit_after_request():
g._rate_limiting_complete = False
def request_headers(source_ip: str) -> dict:
return {"X-Forwarded-For": source_ip}

View File

@ -89,3 +89,11 @@ def load_eml_file(
def random_email() -> str:
return "{rand}@{rand}.com".format(rand=random_string(20))
def fix_rate_limit_after_request():
from flask import g
from app.extensions import limiter
g._rate_limiting_complete = False
setattr(g, "%s_rate_limiting_complete" % limiter._key_prefix, False)