diff --git a/FlowCrypt/Functionality/Mail Provider/Message Provider/MessageHelper.swift b/FlowCrypt/Functionality/Mail Provider/Message Provider/MessageHelper.swift index 42b3b6936..e6092cc54 100644 --- a/FlowCrypt/Functionality/Mail Provider/Message Provider/MessageHelper.swift +++ b/FlowCrypt/Functionality/Mail Provider/Message Provider/MessageHelper.swift @@ -275,12 +275,17 @@ final class MessageHelper { let keyDetails: [KeyDetails] = try await getKeyDetailsFromAttachment(attachments: &attachments, messageId: message.identifier) + // Also extract keyDetails from publicKey blocks (for encrypted messages) + let publicKeyBlockDetails: [KeyDetails] = decrypted.blocks + .filter { $0.type == .publicKey } + .compactMap { $0.keyDetails } + return ProcessedMessage( message: message, text: text, type: messageType, attachments: attachments, - keyDetails: keyDetails, + keyDetails: keyDetails + publicKeyBlockDetails, signature: signature ) } diff --git a/appium/api-mocks/apis/google/exported-messages/message-export-199ff91115aac7b8.json b/appium/api-mocks/apis/google/exported-messages/message-export-199ff91115aac7b8.json new file mode 100644 index 000000000..6a9531704 --- /dev/null +++ b/appium/api-mocks/apis/google/exported-messages/message-export-199ff91115aac7b8.json @@ -0,0 +1,165 @@ +{ + "acctEmail": "e2e.enterprise.test@flowcrypt.com", + "full": { + "id": "199ff91115aac7b8", + "threadId": "199ff91115aac7b8", + "labelIds": [ + "IMPORTANT", + "CATEGORY_PERSONAL", + "INBOX" + ], + "snippet": "Test public key attachment for inline public key message -- Best Regards, Ioan", + "payload": { + "partId": "", + "mimeType": "multipart/mixed", + "filename": "", + "headers": [ + { + "name": "X-Gm-Message-State", + "value": "AOJu0YwUIHBdNEMJrUZX6KQrjbOyYltz6EiFHGkYToeUrMqYNGFpk3Zs WJG1gopbDpd5Z6ei9assBaHaZDdH866yCQ6ljUWB9rB7b2UKJJlUGVJ7FeEBXjcYVO8Z4LptTFi BITkKnEfgQsAd/jUw23RfcQuQb7ALh1pePUGPrspSNgJ4HszNo+fLo+A7BIMM" + }, + { + "name": "X-Gm-Gg", + "value": "ASbGnctMZ5MovuKeBYJiWtr9rNJxCUi+XakysV8nMUiTizCQppK039NF09gpKcmumGM ThDVW4Fpjsbtd9JtD6SE0feCsyc14X9J6ecrFeg53kY7VZPJMhl0XoJUxwoM41SCIkWBfsQHV+g gl5kSk6mDqI3q2NKUFqOcLcYCwBF4jO6jnOs0FzalIK6Xw7E4Uklw0O9HK94EfEine1sgEvB0Ss +Yn+L8gltWy9rrxjNjQBdinkALxAvuQfdvyKZcHki45yAYAlfboYKJ4HQ==" + }, + { + "name": "MIME-Version", + "value": "1.0" + }, + { + "name": "From", + "value": "sender@domain.com" + }, + { + "name": "Date", + "value": "Mon, 20 Oct 2025 00:01:48 -0300" + }, + { + "name": "X-Gm-Features", + "value": "AS18NWDPLiLt0mVMQ3pJQVGl5mnEZNWkY1tuqC8PE5vKQvRc--WGet11iZ03TB8" + }, + { + "name": "Subject", + "value": "Test public key attachment for inline public key" + }, + { + "name": "To", + "value": "flowcrypt.compatibility@gmail.com" + }, + { + "name": "Content-Type", + "value": "multipart/mixed; boundary=\"0000000000009dc5a006418e4eca\"" + } + ], + "body": { + "size": 0 + }, + "parts": [ + { + "partId": "0", + "mimeType": "multipart/alternative", + "filename": "", + "headers": [ + { + "name": "Content-Type", + "value": "multipart/alternative; boundary=\"0000000000009dc59e06418e4ec8\"" + } + ], + "body": { + "size": 0 + }, + "parts": [ + { + "partId": "0.0", + "mimeType": "text/plain", + "filename": "", + "headers": [ + { + "name": "Content-Type", + "value": "text/plain; charset=\"UTF-8\"" + } + ], + "body": { + "size": 88, + "data": "VGVzdCBwdWJsaWMga2V5IGF0dGFjaG1lbnQgZm9yIGlubGluZSBwdWJsaWMga2V5IG1lc3NhZ2UNCg0KLS0gDQpCZXN0ICpSZWdhcmRzKiwNCklvYW4NCg==" + } + }, + { + "partId": "0.1", + "mimeType": "text/html", + "filename": "", + "headers": [ + { + "name": "Content-Type", + "value": "text/html; charset=\"UTF-8\"" + }, + { + "name": "Content-Transfer-Encoding", + "value": "quoted-printable" + } + ], + "body": { + "size": 294, + "data": "PGRpdiBkaXI9Imx0ciI-PGRpdj5UZXN0IHB1YmxpYyBrZXkgYXR0YWNobWVudCBmb3IgaW5saW5lIHB1YmxpYyBrZXkgbWVzc2FnZTxicj48L2Rpdj48ZGl2Pjxicj48L2Rpdj48c3BhbiBjbGFzcz0iZ21haWxfc2lnbmF0dXJlX3ByZWZpeCI-LS0gPC9zcGFuPjxicj48ZGl2IGRpcj0ibHRyIiBjbGFzcz0iZ21haWxfc2lnbmF0dXJlIiBkYXRhLXNtYXJ0bWFpbD0iZ21haWxfc2lnbmF0dXJlIj48ZGl2IGRpcj0ibHRyIj5CZXN0IDxiPlJlZ2FyZHM8L2I-LDxkaXY-SW9hbjwvZGl2PjwvZGl2PjwvZGl2PjwvZGl2Pg0K" + } + } + ] + }, + { + "partId": "1", + "mimeType": "application/octet-stream", + "filename": "0x29FFFFBBFC22ED7B.asc", + "headers": [ + { + "name": "Content-Type", + "value": "application/octet-stream; name=\"0x29FFFFBBFC22ED7B.asc\"" + }, + { + "name": "Content-Disposition", + "value": "attachment; filename=\"0x29FFFFBBFC22ED7B.asc\"" + }, + { + "name": "Content-Transfer-Encoding", + "value": "base64" + }, + { + "name": "Content-ID", + "value": "" + }, + { + "name": "X-Attachment-Id", + "value": "f_mgyjubv10" + } + ], + "body": { + "attachmentId": "ANGjdJ9LBDdfIE9b604N65c3ji2ioNxffdINRWOoU3SKyk1nMTogMz6gOm4td5IGheFK39nBPsw6x1nI_mOfdanKWDGWW8eYxcmggocPE8M6h6fA4yK0XEMTAtiKorw2c61YyRKu91F-45Ef7uzr6Y-JSQbc3ewqQjmLXY7i0nbznZmAHluCEmi84-2Z8OwvfqYm-7wwiSmvQZes2SMlos91xzVGmUCN-_-qHNUfs1ho_7fcr0TeC5ZNX_MMkAEIJ2VWawX1t4HZxSuJBJ01HU_fM7W1wfYixaAv1yx6LL9Zbam4LFqS8CWT2tAme05vK3iu5u5an9z_3s5EFfbRCSS7EzgTKct8qSmNJjbkiAN-RbIRBiBCaZRuRweEbHtHOhsThzTpZD-rYzpSItMz", + "size": 765 + } + } + ] + }, + "sizeEstimate": 7415, + "historyId": "357149", + "internalDate": "1760929308000" + }, + "attachments": { + "ANGjdJ9LBDdfIE9b604N65c3ji2ioNxffdINRWOoU3SKyk1nMTogMz6gOm4td5IGheFK39nBPsw6x1nI_mOfdanKWDGWW8eYxcmggocPE8M6h6fA4yK0XEMTAtiKorw2c61YyRKu91F-45Ef7uzr6Y-JSQbc3ewqQjmLXY7i0nbznZmAHluCEmi84-2Z8OwvfqYm-7wwiSmvQZes2SMlos91xzVGmUCN-_-qHNUfs1ho_7fcr0TeC5ZNX_MMkAEIJ2VWawX1t4HZxSuJBJ01HU_fM7W1wfYixaAv1yx6LL9Zbam4LFqS8CWT2tAme05vK3iu5u5an9z_3s5EFfbRCSS7EzgTKct8qSmNJjbkiAN-RbIRBiBCaZRuRweEbHtHOhsThzTpZD-rYzpSItMz": { + "data": "LS0tLS1CRUdJTiBQR1AgUFVCTElDIEtFWSBCTE9DSy0tLS0tDQpWZXJzaW9uOiBGbG93Q3J5cHQgRW1haWwgRW5jcnlwdGlvbiA4LjUuMTENCkNvbW1lbnQ6IFNlYW1sZXNzbHkgc2VuZCBhbmQgcmVjZWl2ZSBlbmNyeXB0ZWQgZW1haWwNCg0KeGpNRWFDVXVveFlKS3dZQkJBSGFSdzhCQVFkQVZnS3ZSZ2xHT0tTaWVNKzhKZTlWd0NBNUtyUmxCbUppDQpxNlhKWGd6WXVFVE5Ka2x2WVc0Z1lYUWdSbXh2ZDBOeWVYQjBJRHhwYjJGdVFHWnNiM2RqY25sd2RDNWoNCmIyMCt3cFVFRXhZS0FFY0ZBbWdsTHFNSkVDbi8vN3Y4SXUxN0ZpRUVsbGxyNkRoZ0ZMMzBWcW9nS2YvLw0KdS93aTdYc0NuZ0VDbXdNRkZnSURBUUFFQ3drSUJ3VVZDZ2tJQ3dXSkFlRXpnQUtaQVFBQXlYWUJBTWVWDQpvTVNwOGpwSEQ1V08wU1NrNmtTVSs0S1JIaUFmZ1lINW5hNEtNei9IQVFEay9MY3VFeERITzJ4TURCV2MNCnU0blBMaVptVEtLS25FSURPTHl1QTJNdkFjNDRCR2dsTHFNU0Npc0dBUVFCbDFVQkJRRUJCMEFsUDlpaQ0KVFMwYXFDdytjd0hHclZ0TWx3QyttQmpKQjliM2QzcWRrOFN4SWdNQkNBZkNkUVFZRmdvQUhRVUNhQ1V1DQpvd0tlQVFLYkRBVVdBZ01CQUFRTENRZ0hCUlVLQ1FnTEFBb0pFQ24vLzd2OEl1MTdCQVFCQU1OQlNnNnUNCmdDbmlmVW5Fa3UwVmFwb2syb284bGFDSWRCeUNWZmNxYWxwd0FRQ01IZmErN2pRbGJUWTJSeWxiQ25Obw0KbmxvcnJRNnJyVXV1VGsyZHlycG5CZz09DQo9aUxVRw0KLS0tLS1FTkQgUEdQIFBVQkxJQyBLRVkgQkxPQ0stLS0tLQ0K", + "size": 765 + } + }, + "raw": { + "id": "199ff91115aac7b8", + "threadId": "199ff91115aac7b8", + "labelIds": [ + "IMPORTANT", + "CATEGORY_PERSONAL", + "INBOX" + ], + "snippet": "Test public key attachment for inline public key message -- Best Regards, Ioan", + "sizeEstimate": 7415, + "raw": "RGVsaXZlcmVkLVRvOiBlMmUuZW50ZXJwcmlzZS50ZXN0QGZsb3djcnlwdC5jb20NClJlY2VpdmVkOiBieSAyMDAyOmFjMDpmZGM3OjA6YjA6MzcyOjhkZmU6YWRmYiB3aXRoIFNNVFAgaWQgaDdjc3A3OTMzNjkxaW15Ow0KICAgICAgICBTdW4sIDE5IE9jdCAyMDI1IDIwOjAyOjAxIC0wNzAwIChQRFQpDQpYLVJlY2VpdmVkOiBieSAyMDAyOmEwNTo2ODcwOmIyOGY6YjA6MzE1OjhiODA6YWE0YSB3aXRoIFNNVFAgaWQgNTg2ZTUxYTYwZmFiZi0zYzk4ZDE0Yzk0ZG1yNTIyMzkxM2ZhYy40OC4xNzYwOTI5MzIxMjE2Ow0KICAgICAgICBTdW4sIDE5IE9jdCAyMDI1IDIwOjAyOjAxIC0wNzAwIChQRFQpDQpBUkMtU2VhbDogaT0xOyBhPXJzYS1zaGEyNTY7IHQ9MTc2MDkyOTMyMTsgY3Y9bm9uZTsNCiAgICAgICAgZD1nb29nbGUuY29tOyBzPWFyYy0yMDI0MDYwNTsNCiAgICAgICAgYj1HNjJISDh0dDBCcjlWY0NVY0ZhRHhhNHR1S0hLTElZTlE5b1VCWjBmeU9EZjh1ZlFzR3ZpODVYOVJ2TkpoV2lSWjINCiAgICAgICAgIFFndUVpeFc2Ukd5dHVDSkJMaEVBOGFpY2JDU2dPcWE1MTllUUNENnozSWllcUlzalgrbHNTb3IyVHQ4WWZIV1JROXZhDQogICAgICAgICBOOE9ZSlJ1eU15MTRFRC94TW81UkVLUHJaWEpFZlhwQVJSdjdwQUQzdVA4eTBRRmV5dkVJdnJmbzFKalNxK3hWalQwMQ0KICAgICAgICAgOVFPNUwxdDBKKzBLdkpYZHdQYmhROGprSHYvN3NzRkt5TzZoR1lweUZqU3BBQjVCWTAvZ1ZKSndERWxGZFJZWUtRZzQNCiAgICAgICAgIDVZMWxxam5zdUFnay9sb1Q3dk8vdTdiRnM4RGFBa2pPbVFmYnJlTXNsRFRkbDZrVXJoSUp3ZTZTdFZVZEFNemdkQWlEDQogICAgICAgICBSVHF3PT0NCkFSQy1NZXNzYWdlLVNpZ25hdHVyZTogaT0xOyBhPXJzYS1zaGEyNTY7IGM9cmVsYXhlZC9yZWxheGVkOyBkPWdvb2dsZS5jb207IHM9YXJjLTIwMjQwNjA1Ow0KICAgICAgICBoPXRvOnN1YmplY3Q6bWVzc2FnZS1pZDpkYXRlOmZyb206bWltZS12ZXJzaW9uOmRraW0tc2lnbmF0dXJlOw0KICAgICAgICBiaD1wRkd5U29EVExYL0F1dUU3OTJrZ1ltUFBTQkR4SzNodGpUMVpGS212ODlNPTsNCiAgICAgICAgZmg9bzMxd2J5RDNFVXB0aVNFNGZOTlJYekJlOWN5R0s4Qm9aTnhFSDEzYWVJYz07DQogICAgICAgIGI9a290ekxwTkxneVAxdzdBR20yRjMyano3QzFCbExTdGJhSmtRem1IRjVHMGxBMUEzL2lVMy8rQ2picUVvZ2gwSEtzDQogICAgICAgICBjaElvU3FzUEZDaTdwNnhoOEJPSDBOOUZMQVpzY3A5ZlVGcTRnUHk5SkhKdmNrc1pJaXU1MU5meTVSTFFOK3ZjVU92MQ0KICAgICAgICAgR2M5ZnRBMXlmWXRKWW0wZ09sRlpBMEswNDdvL3dHRi9QeVpMcnNUYS9VaVJqbVFaTXI2cjJPMkFVL1BUOW1yVm1wYWkNCiAgICAgICAgIGluSDJqOWc1bXA4bkh5ZjBDU2VLWllSeCt4bGN0aDVLU1orMWdwTnY3amRCcUttNVRHem43WnNHVUR2VlpIZ2g4UFAvDQogICAgICAgICBFRXdIcjVLdXo5eGhYQ0F0RitxV1FWNU1HcVRLM0hkbE1KOUcrSFJQTkkvTU9DeHA4V3V6aTJiZk9BVXlQM2JmdjlJTA0KICAgICAgICAgcnY4QT09Ow0KICAgICAgICBkYXJhPWdvb2dsZS5jb20NCkFSQy1BdXRoZW50aWNhdGlvbi1SZXN1bHRzOiBpPTE7IG14Lmdvb2dsZS5jb207DQogICAgICAgZGtpbT1wYXNzIGhlYWRlci5pPUBmbG93Y3J5cHQuY29tIGhlYWRlci5zPWdvb2dsZSBoZWFkZXIuYj1KZ3RRV2dSTjsNCiAgICAgICBzcGY9cGFzcyAoZ29vZ2xlLmNvbTogZG9tYWluIG9mIGlvYW5AZmxvd2NyeXB0LmNvbSBkZXNpZ25hdGVzIDIwOS44NS4yMjAuNDEgYXMgcGVybWl0dGVkIHNlbmRlcikgc210cC5tYWlsZnJvbT1pb2FuQGZsb3djcnlwdC5jb207DQogICAgICAgZG1hcmM9cGFzcyAocD1SRUpFQ1Qgc3A9UkVKRUNUIGRpcz1OT05FKSBoZWFkZXIuZnJvbT1mbG93Y3J5cHQuY29tOw0KICAgICAgIGRhcmE9bmV1dHJhbCBoZWFkZXIuaT1AZmxvd2NyeXB0LmNvbQ0KUmV0dXJuLVBhdGg6IDxpb2FuQGZsb3djcnlwdC5jb20-DQpSZWNlaXZlZDogZnJvbSBtYWlsLXNvci1mNDEuZ29vZ2xlLmNvbSAobWFpbC1zb3ItZjQxLmdvb2dsZS5jb20uIFsyMDkuODUuMjIwLjQxXSkNCiAgICAgICAgYnkgbXguZ29vZ2xlLmNvbSB3aXRoIFNNVFBTIGlkIDU4NmU1MWE2MGZhYmYtM2M5YjBjMGQyYzhzb3IzOTQ5NDZmYWMuOC4yMDI1LjEwLjE5LjIwLjAyLjAwDQogICAgICAgIGZvciA8ZTJlLmVudGVycHJpc2UudGVzdEBmbG93Y3J5cHQuY29tPg0KICAgICAgICAoR29vZ2xlIFRyYW5zcG9ydCBTZWN1cml0eSk7DQogICAgICAgIFN1biwgMTkgT2N0IDIwMjUgMjA6MDI6MDEgLTA3MDAgKFBEVCkNClJlY2VpdmVkLVNQRjogcGFzcyAoZ29vZ2xlLmNvbTogZG9tYWluIG9mIGlvYW5AZmxvd2NyeXB0LmNvbSBkZXNpZ25hdGVzIDIwOS44NS4yMjAuNDEgYXMgcGVybWl0dGVkIHNlbmRlcikgY2xpZW50LWlwPTIwOS44NS4yMjAuNDE7DQpBdXRoZW50aWNhdGlvbi1SZXN1bHRzOiBteC5nb29nbGUuY29tOw0KICAgICAgIGRraW09cGFzcyBoZWFkZXIuaT1AZmxvd2NyeXB0LmNvbSBoZWFkZXIucz1nb29nbGUgaGVhZGVyLmI9Smd0UVdnUk47DQogICAgICAgc3BmPXBhc3MgKGdvb2dsZS5jb206IGRvbWFpbiBvZiBpb2FuQGZsb3djcnlwdC5jb20gZGVzaWduYXRlcyAyMDkuODUuMjIwLjQxIGFzIHBlcm1pdHRlZCBzZW5kZXIpIHNtdHAubWFpbGZyb209aW9hbkBmbG93Y3J5cHQuY29tOw0KICAgICAgIGRtYXJjPXBhc3MgKHA9UkVKRUNUIHNwPVJFSkVDVCBkaXM9Tk9ORSkgaGVhZGVyLmZyb209Zmxvd2NyeXB0LmNvbTsNCiAgICAgICBkYXJhPW5ldXRyYWwgaGVhZGVyLmk9QGZsb3djcnlwdC5jb20NCkRLSU0tU2lnbmF0dXJlOiB2PTE7IGE9cnNhLXNoYTI1NjsgYz1yZWxheGVkL3JlbGF4ZWQ7DQogICAgICAgIGQ9Zmxvd2NyeXB0LmNvbTsgcz1nb29nbGU7IHQ9MTc2MDkyOTMyMDsgeD0xNzYxNTM0MTIwOyBkYXJuPWZsb3djcnlwdC5jb207DQogICAgICAgIGg9dG86c3ViamVjdDptZXNzYWdlLWlkOmRhdGU6ZnJvbTptaW1lLXZlcnNpb246ZnJvbTp0bzpjYzpzdWJqZWN0DQogICAgICAgICA6ZGF0ZTptZXNzYWdlLWlkOnJlcGx5LXRvOw0KICAgICAgICBiaD1wRkd5U29EVExYL0F1dUU3OTJrZ1ltUFBTQkR4SzNodGpUMVpGS212ODlNPTsNCiAgICAgICAgYj1KZ3RRV2dSTnM2RzZ0NjM5clZHcDJxaU8rZkp2R2Y5Sk0wM3hGSGw3b09hK09oWkJmMDlleDVwTkxBbXJ1MjBkNEoNCiAgICAgICAgIGZncWY3OFdtd3Y5anZuMVRYV2pQRUxIZmZNVHIxT2RzcWIyZDFVajN2VW8vODJYbnF1OUFqQ1ZiaFR5QVA4ZXhjeEUwDQogICAgICAgICBjdnU1RnZBZThKTFRlTmtMUlM4dFpaU05rWGJaRzRBM1RlcUp3PQ0KWC1Hb29nbGUtREtJTS1TaWduYXR1cmU6IHY9MTsgYT1yc2Etc2hhMjU2OyBjPXJlbGF4ZWQvcmVsYXhlZDsNCiAgICAgICAgZD0xZTEwMC5uZXQ7IHM9MjAyMzA2MDE7IHQ9MTc2MDkyOTMyMDsgeD0xNzYxNTM0MTIwOw0KICAgICAgICBoPXRvOnN1YmplY3Q6bWVzc2FnZS1pZDpkYXRlOmZyb206bWltZS12ZXJzaW9uOngtZ20tbWVzc2FnZS1zdGF0ZQ0KICAgICAgICAgOmZyb206dG86Y2M6c3ViamVjdDpkYXRlOm1lc3NhZ2UtaWQ6cmVwbHktdG87DQogICAgICAgIGJoPXBGR3lTb0RUTFgvQXV1RTc5MmtnWW1QUFNCRHhLM2h0alQxWkZLbXY4OU09Ow0KICAgICAgICBiPUJjOC9PMWJEM25NMm5Za1hrNlk3ZGVoanlzcStlQ1plTk9qU0pNbzd5ei84VWgyRUE4LzBKcVZ5NXRGVjVMSG9kUg0KICAgICAgICAgTTdoV2k3SGI2eVRDdG9uWkZhMXhTV2dHb0had2lKNzhNV0ZlZmJXL1VkS3lQOUl4ZC9WWFJkWG1uODQxRGRYdmQ0WTcNCiAgICAgICAgIDJOUE9vWnBuNThVZlB2SFMrQWxVVms2MitCdEhRRFVqQVlQeTAzSHc4bjlsNklUM2xsWHdrcEY2NkZoWkpwSHEzZEgwDQogICAgICAgICAyc1RoeWZ0MVVnTUhjUEp4M1hOenJWeHp6eW03VG13NlYzQmtHRENURlpEc3BnRXlQU3d2dmQvRFZ5ZG5lYjBvRTEwcg0KICAgICAgICAgZTJiZHNXM3F2cm1reUFSOWgwaUd4N1YyRDRDb2Qya210MmlobTFUalltcDdjQTMzWWw2Z1JoS0NWaTRmcFFMYXZOaU0NCiAgICAgICAgIG12V0E9PQ0KWC1HbS1NZXNzYWdlLVN0YXRlOiBBT0p1MFl3VUlIQmRORU1KclVaWDZLUXJqYk95WWx0ejZFaUZIR2tZVG9lVXJNcVlOR0ZwazNacw0KCVdKRzFnb3BiRHBkNVo2ZWk5YXNzQmFIYVpEZEg4NjZ5Q1E2bGpVV0I5ckI3YjJVS0pKbFVHVko3RmVFQlhqY1lWTzhaNExwdFRGaQ0KCUJJVGtLbkVmZ1FzQWQvalV3MjNSZmNRdVFiN0FMaDFwZVBVR1Byc3BTTmdKNEhzek5vK2ZMbytBN0JJTU0NClgtR20tR2c6IEFTYkduY3RNWjVNb3Z1S2VCWUppV3RyOXJOSnhDVWkrWGFreXNWOG5NVWlUaXpDUXBwSzAzOU5GMDlncEtjbXVtR00NCglUaERWVzRGcGpzYnRkOUp0RDZTRTBmZUNzeWMxNFg5SjZlY3JGZWc1M2tZN1ZaUEpNaGwwWG9KVXh3b000MVNDSWtXQmZzUUhWK2cNCglnbDVrU2s2bURxSTNxMk5LVUZxT2NMY1lDd0JGNGpPNmpuT3MwRnphbElLNlh3N0U0VWtsdzBPOUhLOTRFZkVpbmUxc2dFdkIwU3MNCgkrWW4rTDhnbHRXeTlycnhqTmpRQmRpbmtBTHhBdnVRZmR2eUtaY0hraTQ1eUFZQWxmYm9ZS0o0SFE9PQ0KWC1Hb29nbGUtU210cC1Tb3VyY2U6IEFHSFQrSUhpRFhHbkMrL2tPd285d25JT0d6eURBcFVTdjZIaDNlSHpVb09YWldBMk16TW13VWV4c0FpU2R1NkYvY1VOM2NDbG9Fb284c0J4MExKWkNROVRISVU9DQpYLVJlY2VpdmVkOiBieSAyMDAyOmEwNTo2ODcwOmUwZDQ6YjA6M2M5Ojg2ODk6MzViZSB3aXRoIFNNVFAgaWQNCiA1ODZlNTFhNjBmYWJmLTNjOThkMGFkZTg1bXI0OTE1Nzg5ZmFjLjI3LjE3NjA5MjkzMjAzNzY7IFN1biwgMTkgT2N0IDIwMjUNCiAyMDowMjowMCAtMDcwMCAoUERUKQ0KTUlNRS1WZXJzaW9uOiAxLjANCkZyb206IElvYW4gTW9sZG92YW4gPGlvYW5AZmxvd2NyeXB0LmNvbT4NCkRhdGU6IE1vbiwgMjAgT2N0IDIwMjUgMDA6MDE6NDggLTAzMDANClgtR20tRmVhdHVyZXM6IEFTMThOV0RQTGlMdDBtVk1RM3BKUVZHbDVtbkVaTldrWTF0dXFDOFBFNXZLUXZSYy0tV0dldDExaVowM1RCOA0KTWVzc2FnZS1JRDogPENBUEMza2hBaVNCUjlyYzhtU0VLd1VGakdocnlrbThNX0hScVVibkEzZ1kwckhEUTQtd0BtYWlsLmdtYWlsLmNvbT4NClN1YmplY3Q6IFRlc3QgcHVibGljIGtleSBhdHRhY2htZW50IGZvciBpbmxpbmUgcHVibGljIGtleQ0KVG86IGUyZSBlbnRlcnByaXNlIHRlc3QgYXQgRmxvd0NyeXB0IDxlMmUuZW50ZXJwcmlzZS50ZXN0QGZsb3djcnlwdC5jb20-DQpDb250ZW50LVR5cGU6IG11bHRpcGFydC9taXhlZDsgYm91bmRhcnk9IjAwMDAwMDAwMDAwMDlkYzVhMDA2NDE4ZTRlY2EiDQoNCi0tMDAwMDAwMDAwMDAwOWRjNWEwMDY0MThlNGVjYQ0KQ29udGVudC1UeXBlOiBtdWx0aXBhcnQvYWx0ZXJuYXRpdmU7IGJvdW5kYXJ5PSIwMDAwMDAwMDAwMDA5ZGM1OWUwNjQxOGU0ZWM4Ig0KDQotLTAwMDAwMDAwMDAwMDlkYzU5ZTA2NDE4ZTRlYzgNCkNvbnRlbnQtVHlwZTogdGV4dC9wbGFpbjsgY2hhcnNldD0iVVRGLTgiDQoNClRlc3QgcHVibGljIGtleSBhdHRhY2htZW50IGZvciBpbmxpbmUgcHVibGljIGtleSBtZXNzYWdlDQoNCi0tIA0KQmVzdCAqUmVnYXJkcyosDQpJb2FuDQoNCi0tMDAwMDAwMDAwMDAwOWRjNTllMDY0MThlNGVjOA0KQ29udGVudC1UeXBlOiB0ZXh0L2h0bWw7IGNoYXJzZXQ9IlVURi04Ig0KQ29udGVudC1UcmFuc2Zlci1FbmNvZGluZzogcXVvdGVkLXByaW50YWJsZQ0KDQo8ZGl2IGRpcj0zRCJsdHIiPjxkaXY-VGVzdCBwdWJsaWMga2V5IGF0dGFjaG1lbnQgZm9yIGlubGluZSBwdWJsaWMga2V5IG1lc3M9DQphZ2U8YnI-PC9kaXY-PGRpdj48YnI-PC9kaXY-PHNwYW4gY2xhc3M9M0QiZ21haWxfc2lnbmF0dXJlX3ByZWZpeCI-LS0gPC9zcGE9DQpuPjxicj48ZGl2IGRpcj0zRCJsdHIiIGNsYXNzPTNEImdtYWlsX3NpZ25hdHVyZSIgZGF0YS1zbWFydG1haWw9M0QiZ21haWxfc2k9DQpnbmF0dXJlIj48ZGl2IGRpcj0zRCJsdHIiPkJlc3QgPGI-UmVnYXJkczwvYj4sPGRpdj5Jb2FuPC9kaXY-PC9kaXY-PC9kaXY-PC89DQpkaXY-DQoNCi0tMDAwMDAwMDAwMDAwOWRjNTllMDY0MThlNGVjOC0tDQotLTAwMDAwMDAwMDAwMDlkYzVhMDA2NDE4ZTRlY2ENCkNvbnRlbnQtVHlwZTogYXBwbGljYXRpb24vb2N0ZXQtc3RyZWFtOyBuYW1lPSIweDI5RkZGRkJCRkMyMkVEN0IuYXNjIg0KQ29udGVudC1EaXNwb3NpdGlvbjogYXR0YWNobWVudDsgZmlsZW5hbWU9IjB4MjlGRkZGQkJGQzIyRUQ3Qi5hc2MiDQpDb250ZW50LVRyYW5zZmVyLUVuY29kaW5nOiBiYXNlNjQNCkNvbnRlbnQtSUQ6IDxmX21neWp1YnYxMD4NClgtQXR0YWNobWVudC1JZDogZl9tZ3lqdWJ2MTANCg0KTFMwdExTMUNSVWRKVGlCUVIxQWdVRlZDVEVsRElFdEZXU0JDVEU5RFN5MHRMUzB0RFFwV1pYSnphVzl1T2lCR2JHOTNRM0o1Y0hRZw0KUlcxaGFXd2dSVzVqY25sd2RHbHZiaUE0TGpVdU1URU5Da052YlcxbGJuUTZJRk5sWVcxc1pYTnpiSGtnYzJWdVpDQmhibVFnY21Wag0KWldsMlpTQmxibU55ZVhCMFpXUWdaVzFoYVd3TkNnMEtlR3BOUldGRFZYVnZlRmxLUzNkWlFrSkJTR0ZTZHpoQ1FWRmtRVlpuUzNaUw0KWjJ4SFQwdFRhV1ZOS3poS1pUbFdkME5CTlV0eVVteENiVXBwRFFweE5saEtXR2Q2V1hWRlZFNUthMngyV1ZjMFoxbFlVV2RTYlhoMg0KWkRCT2VXVllRakJKUkhod1lqSkdkVkZIV25OaU0yUnFZMjVzZDJSRE5Xb05DbUl5TUN0M2NGVkZSWGhaUzBGRlkwWkJiV2RzVEhGTg0KU2tWRGJpOHZOM1k0U1hVeE4wWnBSVVZzYkd4eU5rUm9aMFpNTXpCV2NXOW5TMll2THcwS2RTOTNhVGRZYzBOdVowVkRiWGROUmtabg0KU1VSQlVVRkZRM2RyU1VKM1ZWWkRaMnRKUTNkWFNrRmxSWHBuUVV0YVFWRkJRWGxZV1VKQlRXVldEUXB2VFZOd09HcHdTRVExVjA4dw0KVTFOck5tdFRWU3MwUzFKSWFVRm1aMWxJTlc1aE5FdE5laTlJUVZGRWF5OU1ZM1ZGZUVSSVR6SjRUVVJDVjJNTkNuVTBibEJNYVZwdA0KVkV0TFMyNUZTVVJQVEhsMVFUSk5ka0ZqTkRSQ1IyZHNUSEZOVTBOcGMwZEJVVkZDYkRGVlFrSlJSVUpDTUVGc1VEbHBhUTBLVkZNdw0KWVhGRGR5dGpkMGhIY2xaMFRXeDNReXR0UW1wS1FqbGlNMlF6Y1dSck9GTjRTV2ROUWtOQlprTmtVVkZaUm1kdlFVaFJWVU5oUTFWMQ0KRFFwdmQwdGxRVkZMWWtSQlZWZEJaMDFDUVVGUlRFTlJaMGhDVWxWTFExRm5URUZCYjBwRlEyNHZMemQyT0VsMU1UZENRVkZDUVUxTw0KUWxObk5uVU5DbWREYm1sbVZXNUZhM1V3Vm1Gd2Iyc3liMjg0YkdGRFNXUkNlVU5XWm1OeFlXeHdkMEZSUTAxSVptRXJOMnBSYkdKVQ0KV1RKU2VXeGlRMjVPYncwS2JteHZjbkpSTm5KeVZYVjFWR3N5WkhseWNHNUNaejA5RFFvOWFVeFZSdzBLTFMwdExTMUZUa1FnVUVkUQ0KSUZCVlFreEpReUJMUlZrZ1FreFBRMHN0TFMwdExRMEsNCi0tMDAwMDAwMDAwMDAwOWRjNWEwMDY0MThlNGVjYS0tDQo=", + "historyId": "357149", + "internalDate": "1760929308000" + } +} \ No newline at end of file diff --git a/appium/api-mocks/apis/google/exported-messages/message-export-199ff914a17b0b67.json b/appium/api-mocks/apis/google/exported-messages/message-export-199ff914a17b0b67.json new file mode 100644 index 000000000..ed839b554 --- /dev/null +++ b/appium/api-mocks/apis/google/exported-messages/message-export-199ff914a17b0b67.json @@ -0,0 +1,134 @@ +{ + "acctEmail": "e2e.enterprise.test@flowcrypt.com", + "full": { + "id": "199ff914a17b0b67", + "threadId": "199ff914a17b0b67", + "labelIds": [ + "IMPORTANT", + "CATEGORY_PERSONAL", + "INBOX" + ], + "snippet": "-----BEGIN PGP MESSAGE----- Version: FlowCrypt Email Encryption 8.5.11 Comment: Seamlessly send and receive encrypted email wV4DT2ZlSmhZ1GoSAQdA+eUWGWZXPx138BpT/wK7BUJu1NKP4POUqp8WDDgV IhUw64D7M9QdsdG+", + "payload": { + "partId": "", + "mimeType": "multipart/mixed", + "filename": "", + "headers": [ + { + "name": "X-Gm-Message-State", + "value": "AOJu0Yw3OAH3w3sDYTxJRpLUXcTc055nA2+1ufao4AnHPRVRi8iJwXf2 k7SezhLHXjEepuFcA5ThedgF6JlVk9qRW5jcOAbpPNzEOneSDHkJqJMcfCqtbSfqznCN+AD5ai1 xEKbSTFqBnPy4Pin5vnjJygy81M3o4/7BttlJn8USnrY2DJjav3qfGeTM4g==" + }, + { + "name": "X-Gm-Gg", + "value": "ASbGncvag2OmhKCMf+h8cyeRGjMMXbnZ9F2SWNF/P1Fh4GMjl8DNu2bbDoUW2bcsw4V 4efiSAwCXMf9nz493iRH4KAiNMJXx6Y+lcRXGoEpX0E2CNjUTRuEVKWJ8i/2JkCLvtzDcDXNAnB 73a0htXhZMZet3kq+wKFfIb/ZB7VckRmDG2+4eUHPwhLHZA+IgxmUWnUeAFlmGwBNbZuSE20iOa YuQ6rFroY1Tgep9aUiBImdlqWKXmsB1tUSExAym62u0gw+YWgDMxF/31A==" + }, + { + "name": "Openpgp", + "value": "id=96596BE8386014BDF456AA2029FFFFBBFC22ED7B" + }, + { + "name": "From", + "value": "sender@domain.com" + }, + { + "name": "MIME-Version", + "value": "1.0" + }, + { + "name": "Date", + "value": "Sun, 19 Oct 2025 20:02:15 -0700" + }, + { + "name": "X-Gm-Features", + "value": "AS18NWCkELgzwZtZqzI0EWFRMtNIudCWTdnzsp34IOuHxwvifPoArTlDuy9SFAw" + }, + { + "name": "Subject", + "value": "Test public key attachment for encrypted message" + }, + { + "name": "To", + "value": "flowcrypt.compatibility@gmail.com" + }, + { + "name": "Content-Type", + "value": "multipart/mixed; boundary=\"00000000000086b9eb06418e4f82\"" + } + ], + "body": { + "size": 0 + }, + "parts": [ + { + "partId": "0", + "mimeType": "text/plain", + "filename": "", + "headers": [ + { + "name": "Content-Type", + "value": "text/plain; charset=\"UTF-8\"" + } + ], + "body": { + "size": 883, + "data": "LS0tLS1CRUdJTiBQR1AgTUVTU0FHRS0tLS0tDQpWZXJzaW9uOiBGbG93Q3J5cHQgRW1haWwgRW5jcnlwdGlvbiA4LjUuMTENCkNvbW1lbnQ6IFNlYW1sZXNzbHkgc2VuZCBhbmQgcmVjZWl2ZSBlbmNyeXB0ZWQgZW1haWwNCg0Kd1Y0RFQyWmxTbWhaMUdvU0FRZEErZVVXR1daWFB4MTM4QnBUL3dLN0JVSnUxTktQNFBPVXFwOFdERGdWDQpJaFV3NjREN005UWRzZEcremFzMGtmRndab1ZSY3czbklSaWsrTFBmbWtmUlRWTG1OZWpEL3MwTGx4Y0gNCnlubkNRWFl6d1Y0RDFMQlJMb2NMeHlJU0FRZEFWaHoxUXBLSVBVS3NoTzlPSTZEUEhQTWltbXBpazdwRw0KQmUwcFIyZ1pRV293N2tic0ZsUXFDQXRjNTVJSGpaVWFHZnJVTFpQbk5lZE83VEd5V1psd2ZzZy91dmJsDQpCbUZzM20xc2JiV1NGN2ZkMHNDR0FhOXJoYmZ2OGdCWHlZZFhLVCtUb2VaZTFwRmx3amNMUHA0bHdLYjINCkhBbmtPQzJIa0hkN1h4K09RSWx6T3cvUWQxWWYvQXg2d3JDNHRzZXFoUGRrcTc0SnJRcTdBNkZQRlpXTg0KSzhJekZsTndtMmVuSjRVc0h3SUhlWUxuaVJpcnVKVkRQR0psbG1pK2U4S3lzbjNtMDh1QkFKUTNLak9YDQpoWlRPV2FRNDJVWGhSVDhRd2dRKzQraG9MbERRYzVPcVdWU2lOY3ErREJkdGxaQis5aDdZTjc0U1cxWE4NCk9ReEJkQkNmQmFFQzBBSElDR1Q0UHdsSGV4OU9udUtBSERVUlplcXRqWnpkRG9iSnRQQ24wNTdTdWhEdA0KQXRvZTNobTFvNVBlMllJckxHcU9iS2RiTTB0bVEvU29OeVJ4THFhY1lCdCtLWmVtdFdJbGo3UVltbFBsDQo5Q0REU1NhMGdGa3RjWXIzMXBOYlBkSjlNRW1nN1lCM1NCaEloQTZVMTB0aEhNak9oUXVMNkR0S0szWXENCllwRUtDZ2VsWmNtNFY0NHIvaTIzOGx5V2FjR0ljYmFWem9VPQ0KPUpqbi8NCi0tLS0tRU5EIFBHUCBNRVNTQUdFLS0tLS0NCg==" + } + }, + { + "partId": "1", + "mimeType": "application/pgp-keys", + "filename": "0x29FFFFBBFC22ED7B.asc", + "headers": [ + { + "name": "Content-Type", + "value": "application/pgp-keys; name=\"0x29FFFFBBFC22ED7B.asc\"" + }, + { + "name": "Content-Disposition", + "value": "attachment; filename=\"0x29FFFFBBFC22ED7B.asc\"" + }, + { + "name": "Content-Transfer-Encoding", + "value": "base64" + }, + { + "name": "Content-ID", + "value": "" + }, + { + "name": "X-Attachment-Id", + "value": "f_NYivSWfOllbFvzURjVFcadLqYsJWmY@flowcrypt" + } + ], + "body": { + "attachmentId": "ANGjdJ_FtW1fb2eBiGF-KYFdOeM96uI9wTfPg7Xjk8fz4L-3DpZmRCeIHk7OnvKvhTQdVxd70ONo9oEm3Vj6-T11gFwoAJGsgq91y73B-5BfL1gag5Gt--MdS2lAShtdaVOUFKDU4hh3AkwFpeHGyVXsnxFCyWDfQMZsvkperOvDfADy3eUuXd3JepXbBCfCsQl_DTb19XqhTms9yaqPigieSTq73JluTX0YtDBfYudMWySgrt0DOJlBbhVDNUnXn6mSAvEBN3f67Evb1Hr6LcOni58nAuTv9SnuJEzgYc2bxE2niB1DUOxreqPF4qH4ZzRmxUM4eewVy0UfvB4wHafqfWTEr-57mjp2QH3qAlzdl1x-XfAjBnU-w7cZX7K51JU783DgLCvgXy0-ViFx", + "size": 765 + } + } + ] + }, + "sizeEstimate": 7990, + "historyId": "357121", + "internalDate": "1760929335000" + }, + "attachments": { + "ANGjdJ_FtW1fb2eBiGF-KYFdOeM96uI9wTfPg7Xjk8fz4L-3DpZmRCeIHk7OnvKvhTQdVxd70ONo9oEm3Vj6-T11gFwoAJGsgq91y73B-5BfL1gag5Gt--MdS2lAShtdaVOUFKDU4hh3AkwFpeHGyVXsnxFCyWDfQMZsvkperOvDfADy3eUuXd3JepXbBCfCsQl_DTb19XqhTms9yaqPigieSTq73JluTX0YtDBfYudMWySgrt0DOJlBbhVDNUnXn6mSAvEBN3f67Evb1Hr6LcOni58nAuTv9SnuJEzgYc2bxE2niB1DUOxreqPF4qH4ZzRmxUM4eewVy0UfvB4wHafqfWTEr-57mjp2QH3qAlzdl1x-XfAjBnU-w7cZX7K51JU783DgLCvgXy0-ViFx": { + "data": "LS0tLS1CRUdJTiBQR1AgUFVCTElDIEtFWSBCTE9DSy0tLS0tDQpWZXJzaW9uOiBGbG93Q3J5cHQgRW1haWwgRW5jcnlwdGlvbiA4LjUuMTENCkNvbW1lbnQ6IFNlYW1sZXNzbHkgc2VuZCBhbmQgcmVjZWl2ZSBlbmNyeXB0ZWQgZW1haWwNCg0KeGpNRWFDVXVveFlKS3dZQkJBSGFSdzhCQVFkQVZnS3ZSZ2xHT0tTaWVNKzhKZTlWd0NBNUtyUmxCbUppDQpxNlhKWGd6WXVFVE5Ka2x2WVc0Z1lYUWdSbXh2ZDBOeWVYQjBJRHhwYjJGdVFHWnNiM2RqY25sd2RDNWoNCmIyMCt3cFVFRXhZS0FFY0ZBbWdsTHFNSkVDbi8vN3Y4SXUxN0ZpRUVsbGxyNkRoZ0ZMMzBWcW9nS2YvLw0KdS93aTdYc0NuZ0VDbXdNRkZnSURBUUFFQ3drSUJ3VVZDZ2tJQ3dXSkFlRXpnQUtaQVFBQXlYWUJBTWVWDQpvTVNwOGpwSEQ1V08wU1NrNmtTVSs0S1JIaUFmZ1lINW5hNEtNei9IQVFEay9MY3VFeERITzJ4TURCV2MNCnU0blBMaVptVEtLS25FSURPTHl1QTJNdkFjNDRCR2dsTHFNU0Npc0dBUVFCbDFVQkJRRUJCMEFsUDlpaQ0KVFMwYXFDdytjd0hHclZ0TWx3QyttQmpKQjliM2QzcWRrOFN4SWdNQkNBZkNkUVFZRmdvQUhRVUNhQ1V1DQpvd0tlQVFLYkRBVVdBZ01CQUFRTENRZ0hCUlVLQ1FnTEFBb0pFQ24vLzd2OEl1MTdCQVFCQU1OQlNnNnUNCmdDbmlmVW5Fa3UwVmFwb2syb284bGFDSWRCeUNWZmNxYWxwd0FRQ01IZmErN2pRbGJUWTJSeWxiQ25Obw0KbmxvcnJRNnJyVXV1VGsyZHlycG5CZz09DQo9aUxVRw0KLS0tLS1FTkQgUEdQIFBVQkxJQyBLRVkgQkxPQ0stLS0tLQ0K", + "size": 765 + } + }, + "raw": { + "id": "199ff914a17b0b67", + "threadId": "199ff914a17b0b67", + "labelIds": [ + "IMPORTANT", + "CATEGORY_PERSONAL", + "INBOX" + ], + "snippet": "-----BEGIN PGP MESSAGE----- Version: FlowCrypt Email Encryption 8.5.11 Comment: Seamlessly send and receive encrypted email wV4DT2ZlSmhZ1GoSAQdA+eUWGWZXPx138BpT/wK7BUJu1NKP4POUqp8WDDgV IhUw64D7M9QdsdG+", + "sizeEstimate": 7990, + "raw": "RGVsaXZlcmVkLVRvOiBlMmUuZW50ZXJwcmlzZS50ZXN0QGZsb3djcnlwdC5jb20NClJlY2VpdmVkOiBieSAyMDAyOmFjMDpmZGM3OjA6YjA6MzcyOjhkZmU6YWRmYiB3aXRoIFNNVFAgaWQgaDdjc3A3OTMzODM4aW15Ow0KICAgICAgICBTdW4sIDE5IE9jdCAyMDI1IDIwOjAyOjE2IC0wNzAwIChQRFQpDQpYLVJlY2VpdmVkOiBieSAyMDAyOmEwNTo2ODcwOjUxMTY6YjA6MzY3OmMzOTI6OWYyYyB3aXRoIFNNVFAgaWQgNTg2ZTUxYTYwZmFiZi0zYzk4Y2Y0MmZiNm1yNTMwODMwNWZhYy4xNi4xNzYwOTI5MzM2MjIwOw0KICAgICAgICBTdW4sIDE5IE9jdCAyMDI1IDIwOjAyOjE2IC0wNzAwIChQRFQpDQpBUkMtU2VhbDogaT0xOyBhPXJzYS1zaGEyNTY7IHQ9MTc2MDkyOTMzNjsgY3Y9bm9uZTsNCiAgICAgICAgZD1nb29nbGUuY29tOyBzPWFyYy0yMDI0MDYwNTsNCiAgICAgICAgYj1qRlAzUHcvQmJjRGpMbG03VFYzbzRQZXYxT1o1NE5QWkhEZ0QxMjEyejJad2t6K2ZUM2FtTGdnL0RZMldLSFA1ZUgNCiAgICAgICAgIFZaZkNyaTQ0NVMvN1hoa1ZSSGViNXo2NjViZVE2bW1pbDNTa2VWNGl5UXZrWE5sSXE4NEJ5U1FPMSszN3NuMXhzYzlWDQogICAgICAgICB6YldxcEZwOGQ5eWlYSUdpTWpkcWVIaVdaQXgzNmw3SWZUajl1MENQcVF3dW5OaXlJT3UvQkhtUmpJSzAwdnZYa2RaNA0KICAgICAgICAgYjdHUU56YkxrckkybGF6TzBGNWphSldISGZzWjBJUWVYMmdEc3ExTkNZSmtPVHR6REY1RGZSblBZQmNIZytlcDJ2Q2oNCiAgICAgICAgIDQxbjJwOW1UTEJkd3Bkck02Z1F3YXo4ZEEzZUVUQjZvQUJzZDlxTjlvWXYzL3cvbjF2dkJzeTRYM1c0bkNJMFVoVkg3DQogICAgICAgICBHb1ZBPT0NCkFSQy1NZXNzYWdlLVNpZ25hdHVyZTogaT0xOyBhPXJzYS1zaGEyNTY7IGM9cmVsYXhlZC9yZWxheGVkOyBkPWdvb2dsZS5jb207IHM9YXJjLTIwMjQwNjA1Ow0KICAgICAgICBoPXRvOnN1YmplY3Q6bWVzc2FnZS1pZDpkYXRlOm1pbWUtdmVyc2lvbjpmcm9tOm9wZW5wZ3A6ZGtpbS1zaWduYXR1cmU7DQogICAgICAgIGJoPW0rMnJJQnhkNHlmanRSU2d0empBem9rWVRQU2RiYmdtNWFPRVIrWndRRnc9Ow0KICAgICAgICBmaD1vMzF3YnlEM0VVcHRpU0U0Zk5OUlh6QmU5Y3lHSzhCb1pOeEVIMTNhZUljPTsNCiAgICAgICAgYj1hSGtMT0xVWHp3aGlrYlE4ZGdsMWlQTk54ZU1wM0hBTUUzOFEzbXF4RFNZMHhEZ3YxL3JsNU01S0dTbEd4Qk1kVTUNCiAgICAgICAgIG85N01MUjk3Sk9aeDVsQWNxTElKOXMwVmE1OFBXaWdvVlZuQmJoRG9TOU5YVnRldjcyMEx4cUY4aFFWcUd6a1FJTGRRDQogICAgICAgICBwZVV5aWlMRWtLaGZUKzVUbHg0eDhkbnJnN3lUVmEzUkxpMWp6UldqQ0U3ZUZLRkdhbzAvRnowWmp4aVZwYnJnNC9QMw0KICAgICAgICAgeWh2NVFoV2VFaUl6Q0xxU0dYK281RU1zK3J3Wkw3Zjlnc2hUMHM2T3gzZVFxKzdMbVl3cmdLWUNubURuaEFocjMvSWINCiAgICAgICAgIHY1ZjByOGhKSEFmYzhGRWNIUkNpbzkyS0g2Snc4TnczLzUzdzQ2MU5KMkpJNkxBYjVEdlF0V3Bjb2I0Z1ZmNFRXQ0l2DQogICAgICAgICAwaEl3PT07DQogICAgICAgIGRhcmE9Z29vZ2xlLmNvbQ0KQVJDLUF1dGhlbnRpY2F0aW9uLVJlc3VsdHM6IGk9MTsgbXguZ29vZ2xlLmNvbTsNCiAgICAgICBka2ltPXBhc3MgaGVhZGVyLmk9QGZsb3djcnlwdC5jb20gaGVhZGVyLnM9Z29vZ2xlIGhlYWRlci5iPU5walM5RkQzOw0KICAgICAgIHNwZj1wYXNzIChnb29nbGUuY29tOiBkb21haW4gb2YgaW9hbkBmbG93Y3J5cHQuY29tIGRlc2lnbmF0ZXMgMjA5Ljg1LjIyMC40MSBhcyBwZXJtaXR0ZWQgc2VuZGVyKSBzbXRwLm1haWxmcm9tPWlvYW5AZmxvd2NyeXB0LmNvbTsNCiAgICAgICBkbWFyYz1wYXNzIChwPVJFSkVDVCBzcD1SRUpFQ1QgZGlzPU5PTkUpIGhlYWRlci5mcm9tPWZsb3djcnlwdC5jb207DQogICAgICAgZGFyYT1uZXV0cmFsIGhlYWRlci5pPUBmbG93Y3J5cHQuY29tDQpSZXR1cm4tUGF0aDogPGlvYW5AZmxvd2NyeXB0LmNvbT4NClJlY2VpdmVkOiBmcm9tIG1haWwtc29yLWY0MS5nb29nbGUuY29tIChtYWlsLXNvci1mNDEuZ29vZ2xlLmNvbS4gWzIwOS44NS4yMjAuNDFdKQ0KICAgICAgICBieSBteC5nb29nbGUuY29tIHdpdGggU01UUFMgaWQgNTg2ZTUxYTYwZmFiZi0zYzliMGY2NjAwOXNvcjgxNTU2NWZhYy4xMC4yMDI1LjEwLjE5LjIwLjAyLjE2DQogICAgICAgIGZvciA8ZTJlLmVudGVycHJpc2UudGVzdEBmbG93Y3J5cHQuY29tPg0KICAgICAgICAoR29vZ2xlIFRyYW5zcG9ydCBTZWN1cml0eSk7DQogICAgICAgIFN1biwgMTkgT2N0IDIwMjUgMjA6MDI6MTYgLTA3MDAgKFBEVCkNClJlY2VpdmVkLVNQRjogcGFzcyAoZ29vZ2xlLmNvbTogZG9tYWluIG9mIGlvYW5AZmxvd2NyeXB0LmNvbSBkZXNpZ25hdGVzIDIwOS44NS4yMjAuNDEgYXMgcGVybWl0dGVkIHNlbmRlcikgY2xpZW50LWlwPTIwOS44NS4yMjAuNDE7DQpBdXRoZW50aWNhdGlvbi1SZXN1bHRzOiBteC5nb29nbGUuY29tOw0KICAgICAgIGRraW09cGFzcyBoZWFkZXIuaT1AZmxvd2NyeXB0LmNvbSBoZWFkZXIucz1nb29nbGUgaGVhZGVyLmI9TnBqUzlGRDM7DQogICAgICAgc3BmPXBhc3MgKGdvb2dsZS5jb206IGRvbWFpbiBvZiBpb2FuQGZsb3djcnlwdC5jb20gZGVzaWduYXRlcyAyMDkuODUuMjIwLjQxIGFzIHBlcm1pdHRlZCBzZW5kZXIpIHNtdHAubWFpbGZyb209aW9hbkBmbG93Y3J5cHQuY29tOw0KICAgICAgIGRtYXJjPXBhc3MgKHA9UkVKRUNUIHNwPVJFSkVDVCBkaXM9Tk9ORSkgaGVhZGVyLmZyb209Zmxvd2NyeXB0LmNvbTsNCiAgICAgICBkYXJhPW5ldXRyYWwgaGVhZGVyLmk9QGZsb3djcnlwdC5jb20NCkRLSU0tU2lnbmF0dXJlOiB2PTE7IGE9cnNhLXNoYTI1NjsgYz1yZWxheGVkL3JlbGF4ZWQ7DQogICAgICAgIGQ9Zmxvd2NyeXB0LmNvbTsgcz1nb29nbGU7IHQ9MTc2MDkyOTMzNTsgeD0xNzYxNTM0MTM1OyBkYXJuPWZsb3djcnlwdC5jb207DQogICAgICAgIGg9dG86c3ViamVjdDptZXNzYWdlLWlkOmRhdGU6bWltZS12ZXJzaW9uOmZyb206b3BlbnBncDpmcm9tOnRvOmNjDQogICAgICAgICA6c3ViamVjdDpkYXRlOm1lc3NhZ2UtaWQ6cmVwbHktdG87DQogICAgICAgIGJoPW0rMnJJQnhkNHlmanRSU2d0empBem9rWVRQU2RiYmdtNWFPRVIrWndRRnc9Ow0KICAgICAgICBiPU5walM5RkQzY1ZTMmhRd2lNWXM2L3BDeTZWUkFyT251Wll4ejl1Tit6b25lcTlNK3RMUURMYTYwdkR6cithY3p3MA0KICAgICAgICAgR0JLZzIyUGtYYUViUjVjS2hjOXF2bTF1M0ZaY0pLYUtXT2RNZUlwTUlQQWRJWURWQkdhK1daamh0UzVxNUk3WFg4K28NCiAgICAgICAgIEVFKzFMdVZCL0Z6TG9jeXFVN2JHRTZqQzhzZWIvbWM1WExzZjQ9DQpYLUdvb2dsZS1ES0lNLVNpZ25hdHVyZTogdj0xOyBhPXJzYS1zaGEyNTY7IGM9cmVsYXhlZC9yZWxheGVkOw0KICAgICAgICBkPTFlMTAwLm5ldDsgcz0yMDIzMDYwMTsgdD0xNzYwOTI5MzM1OyB4PTE3NjE1MzQxMzU7DQogICAgICAgIGg9dG86c3ViamVjdDptZXNzYWdlLWlkOmRhdGU6bWltZS12ZXJzaW9uOmZyb206b3BlbnBncA0KICAgICAgICAgOngtZ20tbWVzc2FnZS1zdGF0ZTpmcm9tOnRvOmNjOnN1YmplY3Q6ZGF0ZTptZXNzYWdlLWlkOnJlcGx5LXRvOw0KICAgICAgICBiaD1tKzJySUJ4ZDR5Zmp0UlNndHpqQXpva1lUUFNkYmJnbTVhT0VSK1p3UUZ3PTsNCiAgICAgICAgYj1aUUNjS3prYVdrUXVXWDJGZGJLZnBuVDlFcWZ4N0wreTZxbUdXWEpmeUFhd1FJbElSYzdxYk42NHhrcXJka2JxQkENCiAgICAgICAgIGo4UVc2amhYSDZwNU5wZ3VMRlgvN0tBUDhiZVpnOUE4Z3A5K0ZJb1JWVk9qMzBrOEt5WHNUcGx6RTllVzNMN09meXM5DQogICAgICAgICBZYU5LcS9qMjRMdVU2S3FIRmJOaGNEVW4zUlE5Z0w1dEpTTGg4NDNLVi9TUFh6VFVYWmo4UzNwN3kvQXZDZGRxQngvRw0KICAgICAgICAga2pVWUpFbkRsZEp3NUtSRC9RNnZnMW44cjNidmJaWU51ekF2SzJ3ZTRxWUEwRkZPL0N6djRQbGhHM3lnZFJsNDRNQTcNCiAgICAgICAgIDZGc3NFY1pkajRGZzlwYkFkcng5NHJyN3pzbjErRUlEbE43eFpORFJKVGRDVGRnNWkzK2pSR081TWUvSnpJcjVBdVdBDQogICAgICAgICBuWnVBPT0NClgtR20tTWVzc2FnZS1TdGF0ZTogQU9KdTBZdzNPQUgzdzNzRFlUeEpScExVWGNUYzA1NW5BMisxdWZhbzRBbkhQUlZSaThpSndYZjINCglrN1NlemhMSFhqRWVwdUZjQTVUaGVkZ0Y2SmxWazlxUlc1amNPQWJwUE56RU9uZVNESGtKcUpNY2ZDcXRiU2Zxem5DTitBRDVhaTENCgl4RUtiU1RGcUJuUHk0UGluNXZuakp5Z3k4MU0zbzQvN0J0dGxKbjhVU25yWTJESmphdjNxZkdlVE00Zz09DQpYLUdtLUdnOiBBU2JHbmN2YWcyT21oS0NNZitoOGN5ZVJHak1NWGJuWjlGMlNXTkYvUDFGaDRHTWpsOEROdTJiYkRvVVcyYmNzdzRWDQoJNGVmaVNBd0NYTWY5bno0OTNpUkg0S0FpTk1KWHg2WStsY1JYR29FcFgwRTJDTmpVVFJ1RVZLV0o4aS8ySmtDTHZ0ekRjRFhOQW5CDQoJNzNhMGh0WGhaTVpldDNrcSt3S0ZmSWIvWkI3VmNrUm1ERzIrNGVVSFB3aExIWkErSWd4bVVXblVlQUZsbUd3Qk5iWnVTRTIwaU9hDQoJWXVRNnJGcm9ZMVRnZXA5YVVpQkltZGxxV0tYbXNCMXRVU0V4QXltNjJ1MGd3K1lXZ0RNeEYvMzFBPT0NClgtR29vZ2xlLVNtdHAtU291cmNlOiBBR0hUK0lFUXkrS1FPU0pwUXdBcU5lZW9TQmI0bEg2c0tKU0QyVnRsejRmQk11MXhtbmZJd3FBWkNZVG9oSzZaVk5VZVFTL0hBNm45SlprVlZ3L0Ruam9ZZjBrPQ0KWC1SZWNlaXZlZDogYnkgMjAwMjphMDU6Njg3MDphYzA2OmIwOjM0NDphOTk0OjJhZDQgd2l0aCBTTVRQIGlkDQogNTg2ZTUxYTYwZmFiZi0zYzk4Y2Y0MmY5NG1yNDIzMzY5NWZhYy4yMC4xNzYwOTI5MzM1NjQxOyBTdW4sIDE5IE9jdCAyMDI1DQogMjA6MDI6MTUgLTA3MDAgKFBEVCkNClJlY2VpdmVkOiBmcm9tIDcxNzI4NDczMDI0NCBuYW1lZCB1bmtub3duIGJ5IGdtYWlsYXBpLmdvb2dsZS5jb20gd2l0aA0KIEhUVFBSRVNUOyBTdW4sIDE5IE9jdCAyMDI1IDIwOjAyOjE1IC0wNzAwDQpSZWNlaXZlZDogZnJvbSA3MTcyODQ3MzAyNDQgbmFtZWQgdW5rbm93biBieSBnbWFpbGFwaS5nb29nbGUuY29tIHdpdGgNCiBIVFRQUkVTVDsgU3VuLCAxOSBPY3QgMjAyNSAyMDowMjoxNSAtMDcwMA0KT3BlbnBncDogaWQ9OTY1OTZCRTgzODYwMTRCREY0NTZBQTIwMjlGRkZGQkJGQzIyRUQ3Qg0KRnJvbTogSW9hbiBNb2xkb3ZhbiA8aW9hbkBmbG93Y3J5cHQuY29tPg0KTUlNRS1WZXJzaW9uOiAxLjANCkRhdGU6IFN1biwgMTkgT2N0IDIwMjUgMjA6MDI6MTUgLTA3MDANClgtR20tRmVhdHVyZXM6IEFTMThOV0NrRUxnendadFpxekkwRVdGUk10Tkl1ZENXVGRuenNwMzRJT3VIeHd2aWZQb0FyVGxEdXk5U0ZBdw0KTWVzc2FnZS1JRDogPENBUEMza2hBYVFWN1l5U25tMHJoZEhtdDVQdmFSejNwRU9kZnNUcTlqWW5TQk5GSjJZZ0BtYWlsLmdtYWlsLmNvbT4NClN1YmplY3Q6IFRlc3QgcHVibGljIGtleSBhdHRhY2htZW50IGZvciBlbmNyeXB0ZWQgbWVzc2FnZQ0KVG86IGUyZSBlbnRlcnByaXNlIHRlc3QgYXQgRmxvd0NyeXB0IDxlMmUuZW50ZXJwcmlzZS50ZXN0QGZsb3djcnlwdC5jb20-DQpDb250ZW50LVR5cGU6IG11bHRpcGFydC9taXhlZDsgYm91bmRhcnk9IjAwMDAwMDAwMDAwMDg2YjllYjA2NDE4ZTRmODIiDQoNCi0tMDAwMDAwMDAwMDAwODZiOWViMDY0MThlNGY4Mg0KQ29udGVudC1UeXBlOiB0ZXh0L3BsYWluOyBjaGFyc2V0PSJVVEYtOCINCg0KLS0tLS1CRUdJTiBQR1AgTUVTU0FHRS0tLS0tDQpWZXJzaW9uOiBGbG93Q3J5cHQgRW1haWwgRW5jcnlwdGlvbiA4LjUuMTENCkNvbW1lbnQ6IFNlYW1sZXNzbHkgc2VuZCBhbmQgcmVjZWl2ZSBlbmNyeXB0ZWQgZW1haWwNCg0Kd1Y0RFQyWmxTbWhaMUdvU0FRZEErZVVXR1daWFB4MTM4QnBUL3dLN0JVSnUxTktQNFBPVXFwOFdERGdWDQpJaFV3NjREN005UWRzZEcremFzMGtmRndab1ZSY3czbklSaWsrTFBmbWtmUlRWTG1OZWpEL3MwTGx4Y0gNCnlubkNRWFl6d1Y0RDFMQlJMb2NMeHlJU0FRZEFWaHoxUXBLSVBVS3NoTzlPSTZEUEhQTWltbXBpazdwRw0KQmUwcFIyZ1pRV293N2tic0ZsUXFDQXRjNTVJSGpaVWFHZnJVTFpQbk5lZE83VEd5V1psd2ZzZy91dmJsDQpCbUZzM20xc2JiV1NGN2ZkMHNDR0FhOXJoYmZ2OGdCWHlZZFhLVCtUb2VaZTFwRmx3amNMUHA0bHdLYjINCkhBbmtPQzJIa0hkN1h4K09RSWx6T3cvUWQxWWYvQXg2d3JDNHRzZXFoUGRrcTc0SnJRcTdBNkZQRlpXTg0KSzhJekZsTndtMmVuSjRVc0h3SUhlWUxuaVJpcnVKVkRQR0psbG1pK2U4S3lzbjNtMDh1QkFKUTNLak9YDQpoWlRPV2FRNDJVWGhSVDhRd2dRKzQraG9MbERRYzVPcVdWU2lOY3ErREJkdGxaQis5aDdZTjc0U1cxWE4NCk9ReEJkQkNmQmFFQzBBSElDR1Q0UHdsSGV4OU9udUtBSERVUlplcXRqWnpkRG9iSnRQQ24wNTdTdWhEdA0KQXRvZTNobTFvNVBlMllJckxHcU9iS2RiTTB0bVEvU29OeVJ4THFhY1lCdCtLWmVtdFdJbGo3UVltbFBsDQo5Q0REU1NhMGdGa3RjWXIzMXBOYlBkSjlNRW1nN1lCM1NCaEloQTZVMTB0aEhNak9oUXVMNkR0S0szWXENCllwRUtDZ2VsWmNtNFY0NHIvaTIzOGx5V2FjR0ljYmFWem9VPQ0KPUpqbi8NCi0tLS0tRU5EIFBHUCBNRVNTQUdFLS0tLS0NCg0KLS0wMDAwMDAwMDAwMDA4NmI5ZWIwNjQxOGU0ZjgyDQpDb250ZW50LVR5cGU6IGFwcGxpY2F0aW9uL3BncC1rZXlzOyBuYW1lPSIweDI5RkZGRkJCRkMyMkVEN0IuYXNjIg0KQ29udGVudC1EaXNwb3NpdGlvbjogYXR0YWNobWVudDsgZmlsZW5hbWU9IjB4MjlGRkZGQkJGQzIyRUQ3Qi5hc2MiDQpDb250ZW50LVRyYW5zZmVyLUVuY29kaW5nOiBiYXNlNjQNCkNvbnRlbnQtSUQ6IDxmX05ZaXZTV2ZPbGxiRnZ6VVJqVkZjYWRMcVlzSldtWUBmbG93Y3J5cHQ-DQpYLUF0dGFjaG1lbnQtSWQ6IGZfTllpdlNXZk9sbGJGdnpVUmpWRmNhZExxWXNKV21ZQGZsb3djcnlwdA0KDQpMUzB0TFMxQ1JVZEpUaUJRUjFBZ1VGVkNURWxESUV0RldTQkNURTlEU3kwdExTMHREUXBXWlhKemFXOXVPaUJHYkc5M1EzSjVjSFFnDQpSVzFoYVd3Z1JXNWpjbmx3ZEdsdmJpQTRMalV1TVRFTkNrTnZiVzFsYm5RNklGTmxZVzFzWlhOemJIa2djMlZ1WkNCaGJtUWdjbVZqDQpaV2wyWlNCbGJtTnllWEIwWldRZ1pXMWhhV3dOQ2cwS2VHcE5SV0ZEVlhWdmVGbEtTM2RaUWtKQlNHRlNkemhDUVZGa1FWWm5TM1pTDQpaMnhIVDB0VGFXVk5LemhLWlRsV2QwTkJOVXR5VW14Q2JVcHBEUXB4TmxoS1dHZDZXWFZGVkU1S2EyeDJXVmMwWjFsWVVXZFNiWGgyDQpaREJPZVdWWVFqQkpSSGh3WWpKR2RWRkhXbk5pTTJScVkyNXNkMlJETldvTkNtSXlNQ3QzY0ZWRlJYaFpTMEZGWTBaQmJXZHNUSEZODQpTa1ZEYmk4dk4zWTRTWFV4TjBacFJVVnNiR3h5TmtSb1owWk1NekJXY1c5blMyWXZMdzBLZFM5M2FUZFljME51WjBWRGJYZE5Sa1puDQpTVVJCVVVGRlEzZHJTVUozVlZaRFoydEpRM2RYU2tGbFJYcG5RVXRhUVZGQlFYbFlXVUpCVFdWV0RRcHZUVk53T0dwd1NFUTFWMDh3DQpVMU5yTm10VFZTczBTMUpJYVVGbVoxbElOVzVoTkV0TmVpOUlRVkZFYXk5TVkzVkZlRVJJVHpKNFRVUkNWMk1OQ25VMGJsQk1hVnB0DQpWRXRMUzI1RlNVUlBUSGwxUVRKTmRrRmpORFJDUjJkc1RIRk5VME5wYzBkQlVWRkNiREZWUWtKUlJVSkNNRUZzVURscGFRMEtWRk13DQpZWEZEZHl0amQwaEhjbFowVFd4M1F5dHRRbXBLUWpsaU0yUXpjV1JyT0ZONFNXZE5Ra05CWmtOa1VWRlpSbWR2UVVoUlZVTmhRMVYxDQpEUXB2ZDB0bFFWRkxZa1JCVlZkQlowMUNRVUZSVEVOUlowaENVbFZMUTFGblRFRkJiMHBGUTI0dkx6ZDJPRWwxTVRkQ1FWRkNRVTFPDQpRbE5uTm5VTkNtZERibWxtVlc1RmEzVXdWbUZ3YjJzeWIyODRiR0ZEU1dSQ2VVTldabU54WVd4d2QwRlJRMDFJWm1Fck4ycFJiR0pVDQpXVEpTZVd4aVEyNU9idzBLYm14dmNuSlJObkp5VlhWMVZHc3laSGx5Y0c1Q1p6MDlEUW85YVV4VlJ3MEtMUzB0TFMxRlRrUWdVRWRRDQpJRkJWUWt4SlF5QkxSVmtnUWt4UFEwc3RMUzB0TFEwSw0KLS0wMDAwMDAwMDAwMDA4NmI5ZWIwNjQxOGU0ZjgyLS0NCg==", + "historyId": "357121", + "internalDate": "1760929335000" + } +} \ No newline at end of file diff --git a/appium/api-mocks/apis/google/google-messages.ts b/appium/api-mocks/apis/google/google-messages.ts index 639c3826a..e49cf80ce 100644 --- a/appium/api-mocks/apis/google/google-messages.ts +++ b/appium/api-mocks/apis/google/google-messages.ts @@ -34,4 +34,6 @@ export type GoogleMockMessage = | 'Test Spoofed email by Mart' | 'Test encrypted message sent via encrypted contact page with attachment' | 'Canary Mail PGP encrypted emails cannot be read by Flowcrypt recipient' - | 'plain message quote rendering'; + | 'plain message quote rendering' + | 'Test public key attachment for encrypted message' + | 'Test public key attachment for inline public key'; diff --git a/appium/tests/data/index.ts b/appium/tests/data/index.ts index 6f4b0dd0d..92929068d 100644 --- a/appium/tests/data/index.ts +++ b/appium/tests/data/index.ts @@ -112,6 +112,10 @@ export const CommonData = { publicKeyEmail: 'flowcrypt.compatibility@gmail.com', publicKeyFingerPrint: 'E8F0 517B A6D7 DAB6 081C 96E4 ADAC 279C 9509 3207', }, + inlinePublicKeyAttachment: { + publicKeyEmail: 'ioan@flowcrypt.com', + publicKeyFingerPrint: '9659 6BE8 3860 14BD F456 AA20 29FF FFBB FC22 ED7B', + }, emailWithAnotherUserPublicKey: { subject: 'Email with another user public key attached', publicKeyEmail: 'demo@flowcrypt.com', diff --git a/appium/tests/specs/mock/inbox/CheckPublicKeyAttachment.spec.ts b/appium/tests/specs/mock/inbox/CheckPublicKeyAttachment.spec.ts new file mode 100644 index 000000000..0fb014ee3 --- /dev/null +++ b/appium/tests/specs/mock/inbox/CheckPublicKeyAttachment.spec.ts @@ -0,0 +1,36 @@ +import { MockApi } from 'api-mocks/mock'; +import { MockApiConfig } from 'api-mocks/mock-config'; +import { EmailScreen, MailFolderScreen, SetupKeyScreen, SplashScreen } from '../../../screenobjects/all-screens'; +import { CommonData } from 'tests/data'; + +describe('COMPOSE EMAIL: ', () => { + it('check public key attachment', async () => { + const mockApi = new MockApi(); + const testSubject = 'Test public key attachment for encrypted message'; + const testInnerPublicKeySubject = 'Test public key attachment for inline public key'; + + const publicKeyEmail = CommonData.inlinePublicKeyAttachment.publicKeyEmail; + const publicKeyFingerprint = CommonData.inlinePublicKeyAttachment.publicKeyFingerPrint; + mockApi.fesConfig = MockApiConfig.defaultEnterpriseFesConfiguration; + mockApi.ekmConfig = MockApiConfig.defaultEnterpriseEkmConfiguration; + mockApi.addGoogleAccount('e2e.enterprise.test@flowcrypt.com', { + messages: [testSubject, testInnerPublicKeySubject], + }); + + await mockApi.withMockedApis(async () => { + await SplashScreen.mockLogin(); + await SetupKeyScreen.setPassPhrase(); + await MailFolderScreen.checkInboxScreen(); + + // Check public key import view for encrypted message + await MailFolderScreen.clickOnEmailBySubject(testSubject); + await EmailScreen.checkPublicKeyImportView(publicKeyEmail, publicKeyFingerprint, false); + + await EmailScreen.clickBackButton(); + + // Check public key import view for inline public key attachment + await MailFolderScreen.clickOnEmailBySubject(testInnerPublicKeySubject); + await EmailScreen.checkPublicKeyImportView(publicKeyEmail, publicKeyFingerprint, false); + }); + }); +});