GODT-1234 Set attachment name 'message.eml' for message/rfc822 attachments.

This commit is contained in:
Jakub
2021-07-19 14:23:46 +02:00
parent e3e4769d78
commit 63780b7b8d
8 changed files with 143 additions and 8 deletions

View File

@ -75,5 +75,10 @@ func (api *FakePMAPI) CreateAttachment(_ context.Context, attachment *pmapi.Atta
return nil, err
}
attachment.KeyPackets = base64.StdEncoding.EncodeToString(bytes)
msg := api.getMessage(attachment.MessageID)
if msg == nil {
return nil, fmt.Errorf("no such message ID %q", attachment.MessageID)
}
msg.Attachments = append(msg.Attachments, attachment)
return attachment, nil
}

View File

@ -34,10 +34,8 @@ func (api *FakePMAPI) GetMessage(_ context.Context, apiID string) (*pmapi.Messag
if err := api.checkAndRecordCall(GET, "/mail/v4/messages/"+apiID, nil); err != nil {
return nil, err
}
for _, message := range api.messages {
if message.ID == apiID {
return message, nil
}
if msg := api.getMessage(apiID); msg != nil {
return msg, nil
}
return nil, fmt.Errorf("message %s not found", apiID)
}
@ -175,8 +173,8 @@ func (api *FakePMAPI) SendMessage(ctx context.Context, messageID string, sendMes
if err := api.checkAndRecordCall(POST, "/mail/v4/messages/"+messageID, sendMessageRequest); err != nil {
return nil, nil, err
}
message, err := api.GetMessage(ctx, messageID)
if err != nil {
message := api.getMessage(messageID)
if message == nil {
return nil, nil, errors.Wrap(err, "draft does not exist")
}
message.Time = time.Now().Unix()
@ -276,6 +274,15 @@ func (api *FakePMAPI) findMessage(newMsg *pmapi.Message) *pmapi.Message {
return nil
}
func (api *FakePMAPI) getMessage(msgID string) *pmapi.Message {
for _, msg := range api.messages {
if msg.ID == msgID {
return msg
}
}
return nil
}
func (api *FakePMAPI) addMessage(message *pmapi.Message) {
if api.findMessage(message) != nil {
return