mirror of
https://github.com/simple-login/app.git
synced 2024-09-27 20:31:30 +02:00
make sure only premium user can create new mailbox via API
This commit is contained in:
parent
dd591c7437
commit
eb2adc870a
@ -41,6 +41,9 @@ def create_mailbox():
|
||||
user = g.user
|
||||
mailbox_email = sanitize_email(request.get_json().get("email"))
|
||||
|
||||
if not user.is_premium():
|
||||
return jsonify(error=f"Only premium plan can add additional mailbox"), 400
|
||||
|
||||
if not is_valid_email(mailbox_email):
|
||||
return jsonify(error=f"{mailbox_email} invalid"), 400
|
||||
elif mailbox_already_used(mailbox_email, user):
|
||||
|
@ -31,6 +31,20 @@ def test_create_mailbox(flask_client):
|
||||
assert r.json == {"error": "gmail.com invalid"}
|
||||
|
||||
|
||||
def test_create_mailbox_fail_for_free_user(flask_client):
|
||||
user = login(flask_client)
|
||||
user.trial_end = None
|
||||
db.session.commit()
|
||||
|
||||
r = flask_client.post(
|
||||
"/api/mailboxes",
|
||||
json={"email": "mailbox@gmail.com"},
|
||||
)
|
||||
|
||||
assert r.status_code == 400
|
||||
assert r.json == {"error": "Only premium plan can add additional mailbox"}
|
||||
|
||||
|
||||
def test_delete_mailbox(flask_client):
|
||||
user = login(flask_client)
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user