From 03841693ba1536e8b7db52c366a6fb48d109b851 Mon Sep 17 00:00:00 2001 From: Son NK <> Date: Tue, 4 Aug 2020 20:09:42 +0200 Subject: [PATCH 1/3] Return support_pgp in GET /api/v2/aliases --- README.md | 1 + app/api/serializer.py | 1 + app/api/views/alias.py | 1 + tests/api/test_alias.py | 3 +++ 4 files changed, 6 insertions(+) diff --git a/README.md b/README.md index a80af265..c37709f6 100644 --- a/README.md +++ b/README.md @@ -964,6 +964,7 @@ If success, 200 with the list of aliases. Each alias has the following fields: - nb_block - nb_forward - nb_reply +- support_pgp: whether an alias can support PGP, i.e. when one of alias's mailboxes supports PGP. - mailbox: obsolete, should use `mailboxes` instead. - id - email diff --git a/app/api/serializer.py b/app/api/serializer.py index 8c2f85f9..635c157d 100644 --- a/app/api/serializer.py +++ b/app/api/serializer.py @@ -62,6 +62,7 @@ def serialize_alias_info_v2(alias_info: AliasInfo) -> dict: {"id": mailbox.id, "email": mailbox.email} for mailbox in alias_info.mailboxes ], + "support_pgp": alias_info.alias.mailbox_support_pgp() } if alias_info.latest_email_log: email_log = alias_info.latest_email_log diff --git a/app/api/views/alias.py b/app/api/views/alias.py index a21fbc61..3b0f96d4 100644 --- a/app/api/views/alias.py +++ b/app/api/views/alias.py @@ -84,6 +84,7 @@ def get_aliases_v2(): - note - mailbox - mailboxes + - support_pgp - (optional) latest_activity: - timestamp - action: forward|reply|block|bounced diff --git a/tests/api/test_alias.py b/tests/api/test_alias.py index 923213c2..6c98d702 100644 --- a/tests/api/test_alias.py +++ b/tests/api/test_alias.py @@ -187,6 +187,9 @@ def test_get_aliases_v2(flask_client): assert "id" in mailbox assert "email" in mailbox + assert "support_pgp" in r0 + assert not r0["support_pgp"] + def test_delete_alias(flask_client): user = User.create( From b3ca7d1d5be1f9e84655e64eecad8978e9e463a5 Mon Sep 17 00:00:00 2001 From: Son NK <> Date: Tue, 4 Aug 2020 20:11:59 +0200 Subject: [PATCH 2/3] Return pgp_enabled in GET /api/v2/aliases --- README.md | 1 + app/api/serializer.py | 3 ++- app/api/views/alias.py | 1 + tests/api/test_alias.py | 3 +++ 4 files changed, 7 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index c37709f6..fc523860 100644 --- a/README.md +++ b/README.md @@ -965,6 +965,7 @@ If success, 200 with the list of aliases. Each alias has the following fields: - nb_forward - nb_reply - support_pgp: whether an alias can support PGP, i.e. when one of alias's mailboxes supports PGP. +- pgp_enabled: whether the PGP is enabled on this alias. This field should only be used when `support_pgp` is true. - mailbox: obsolete, should use `mailboxes` instead. - id - email diff --git a/app/api/serializer.py b/app/api/serializer.py index 635c157d..c03b32db 100644 --- a/app/api/serializer.py +++ b/app/api/serializer.py @@ -62,7 +62,8 @@ def serialize_alias_info_v2(alias_info: AliasInfo) -> dict: {"id": mailbox.id, "email": mailbox.email} for mailbox in alias_info.mailboxes ], - "support_pgp": alias_info.alias.mailbox_support_pgp() + "support_pgp": alias_info.alias.mailbox_support_pgp(), + "pgp_enabled": alias_info.alias.pgp_enabled() } if alias_info.latest_email_log: email_log = alias_info.latest_email_log diff --git a/app/api/views/alias.py b/app/api/views/alias.py index 3b0f96d4..d63b390b 100644 --- a/app/api/views/alias.py +++ b/app/api/views/alias.py @@ -85,6 +85,7 @@ def get_aliases_v2(): - mailbox - mailboxes - support_pgp + - pgp_enabled - (optional) latest_activity: - timestamp - action: forward|reply|block|bounced diff --git a/tests/api/test_alias.py b/tests/api/test_alias.py index 6c98d702..b6fefa88 100644 --- a/tests/api/test_alias.py +++ b/tests/api/test_alias.py @@ -190,6 +190,9 @@ def test_get_aliases_v2(flask_client): assert "support_pgp" in r0 assert not r0["support_pgp"] + assert "pgp_enabled" in r0 + assert not r0["pgp_enabled"] + def test_delete_alias(flask_client): user = User.create( From a3051b3d45847bb99f38bf7cd9a2cf01703e3c1e Mon Sep 17 00:00:00 2001 From: Son NK <> Date: Tue, 4 Aug 2020 20:12:15 +0200 Subject: [PATCH 3/3] black --- app/api/serializer.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/api/serializer.py b/app/api/serializer.py index c03b32db..b2c68180 100644 --- a/app/api/serializer.py +++ b/app/api/serializer.py @@ -63,7 +63,7 @@ def serialize_alias_info_v2(alias_info: AliasInfo) -> dict: for mailbox in alias_info.mailboxes ], "support_pgp": alias_info.alias.mailbox_support_pgp(), - "pgp_enabled": alias_info.alias.pgp_enabled() + "pgp_enabled": alias_info.alias.pgp_enabled(), } if alias_info.latest_email_log: email_log = alias_info.latest_email_log