linagora / james-project

Mirror of Apache James Project
Apache License 2.0
70 stars 63 forks source link

EmailSubmission/set broken if identitity has name #5108

Closed chibenwa closed 6 months ago

chibenwa commented 6 months ago
{
    "using": [
        "urn:ietf:params:jmap:submission",
        "urn:ietf:params:jmap:mail",
        "urn:ietf:params:jmap:core",
        "urn:apache:james:params:jmap:mail:shares"
    ],
    "methodCalls": [
        [
            "Email/set",
            {
                "accountId": "51e6371779b54390bf5970559c64c2725da1d3b8a3c548a97ddf98522822ca75",
                "create": {
                    "c3b14720-d7e2-11ee-a0e2-9f3ec1a26313": {
                        "mailboxIds": {
                            "3a95e430-b6e2-11ee-95b9-49fc99c32643": true
                        },
                        "subject": "dfvwefb",
                        "from": [
                            {
                                "name": "Test SFR15",
                                "email": "comptetest15.linagora@avocat.fr"
                            }
                        ],
                        "to": [
                            {
                                "name": "",
                                "email": "comptetest15.linagora@avocat.fr"
                            }
                        ],
                        "cc": [],
                        "bcc": [],
                        "replyTo": [
                            {
                                "name": null,
                                "email": "comptetest15.linagora@avocat.fr"
                            }
                        ],
                        "htmlBody": [
                            {
                                "partId": "c3b12010-d7e2-11ee-a0e2-9f3ec1a26313",
                                "type": "text/html"
                            }
                        ],
                        "bodyValues": {
                            "c3b12010-d7e2-11ee-a0e2-9f3ec1a26313": {
                                "value": "<div>compt<br>bwerbwe</div>",
                                "isEncodingProblem": false,
                                "isTruncated": false
                            }
                        },
                        "header:User-Agent:asText": "Team-Mail/0.11.3 Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/122.0.0.0 Safari/537.36"
                    }
                }
            },
            "c0"
        ],
        [
            "EmailSubmission/set",
            {
                "accountId": "51e6371779b54390bf5970559c64c2725da1d3b8a3c548a97ddf98522822ca75",
                "create": {
                    "c3b14721-d7e2-11ee-a0e2-9f3ec1a26313": {
                        "identityId": "53426fd6-b38a-48e2-ab70-306b67b2c5df",
                        "emailId": "#c3b14720-d7e2-11ee-a0e2-9f3ec1a26313",
                        "envelope": {
                            "mailFrom": {
                                "email": "comptetest15.linagora@avocat.fr"
                            },
                            "rcptTo": [
                                {
                                    "email": "comptetest15.linagora@avocat.fr"
                                }
                            ]
                        }
                    }
                },
                "onSuccessUpdateEmail": {
                    "#c3b14721-d7e2-11ee-a0e2-9f3ec1a26313": {
                        "mailboxIds/3aa8cff0-b6e2-11ee-95b9-49fc99c32643": true,
                        "mailboxIds/3a95e430-b6e2-11ee-95b9-49fc99c32643": null,
                        "keywords/$seen": true,
                        "keywords/$draft": null
                    }
                }
            },
            "c1"
        ]
    ]
}

Failed:

{
    "sessionState": "2c9f1b12-b35a-43e6-9af2-0106fb53a943",
    "methodResponses": [
        [
            "Email/set",
            {
                "accountId": "51e6371779b54390bf5970559c64c2725da1d3b8a3c548a97ddf98522822ca75",
                "oldState": "b7ca1900-d7e2-11ee-a216-6f5b5e0a8618",
                "newState": "b7ca1900-d7e2-11ee-a216-6f5b5e0a8618",
                "created": {
                    "c3b14720-d7e2-11ee-a0e2-9f3ec1a26313": {
                        "id": "c3b8e840-d7e2-11ee-9d26-e5f5b0585810",
                        "blobId": "c3b8e840-d7e2-11ee-9d26-e5f5b0585810",
                        "threadId": "c3b8e840-d7e2-11ee-9d26-e5f5b0585810",
                        "size": 915
                    }
                }
            },
            "c0"
        ],
        [
            "EmailSubmission/set",
            {
                "accountId": "51e6371779b54390bf5970559c64c2725da1d3b8a3c548a97ddf98522822ca75",
                "newState": "2c9f1b12-b35a-43e6-9af2-0106fb53a943",
                "notCreated": {
                    "c3b14721-d7e2-11ee-a0e2-9f3ec1a26313": {
                        "type": "invalidArguments",
                        "description": "Invalid mail address: Test SFR15 <comptetest15.linagora@avocat.fr> in from header"
                    }
                }
            },
            "c1"
        ]
    ]
}

Our integration test do not test `EmailSubmission/set with a name in the from?