return full alias info in POST /api/alias/random/new

This commit is contained in:
Son NK 2020-03-26 19:50:22 +01:00
parent d4a32451c1
commit 97dff83453
3 changed files with 28 additions and 2 deletions

View File

@ -743,7 +743,16 @@ If success, 201 with the new alias, for example
```json
{
"alias": "www_groupon_com@my_domain.com"
"alias": "prefix.suffix@my_domain.com",
"creation_date": "2020-02-04 16:23:02+00:00",
"creation_timestamp": 1580833382,
"email": "www_groupon_com@my_domain.com",
"id": 4,
"nb_block": 0,
"nb_forward": 0,
"nb_reply": 0,
"enabled": true,
"note": "This is a note"
}
```

View File

@ -3,7 +3,9 @@ from flask import jsonify, request
from flask_cors import cross_origin
from app.api.base import api_bp, verify_api_key
from app.api.views.alias import serialize_alias_info
from app.config import MAX_NB_EMAIL_FREE_PLAN
from app.dashboard.views.index import get_alias_info
from app.extensions import db
from app.log import LOG
from app.models import Alias, AliasUsedOn, AliasGeneratorEnum
@ -55,4 +57,7 @@ def new_random_alias():
AliasUsedOn.create(alias_id=alias.id, hostname=hostname, user_id=alias.user_id)
db.session.commit()
return jsonify(alias=alias.email), 201
return (
jsonify(alias=alias.email, **serialize_alias_info(get_alias_info(alias))),
201,
)

View File

@ -25,6 +25,18 @@ def test_success(flask_client):
assert r.status_code == 201
assert r.json["alias"].endswith(EMAIL_DOMAIN)
# assert returned field
res = r.json
assert "id" in res
assert "email" in res
assert "creation_date" in res
assert "creation_timestamp" in res
assert "nb_forward" in res
assert "nb_block" in res
assert "nb_reply" in res
assert "enabled" in res
assert "note" in res
def test_custom_mode(flask_client):
user = User.create(