1
0

feat(GODT-2725): Implement receive message step with expected structure exposed.

This commit is contained in:
Romain Le Jeune
2023-09-27 14:17:51 +00:00
parent e9c73c2d0d
commit 50acc0dcfb
5 changed files with 433 additions and 30 deletions

View File

@ -19,6 +19,7 @@ package tests
import (
"bytes"
"encoding/json"
"fmt"
"io"
"os"
@ -342,6 +343,26 @@ func (s *scenario) imapClientEventuallySeesTheFollowingMessagesInMailbox(clientI
})
}
func (s *scenario) imapClientSeesMessageInMailboxWithStructure(clientID, mailbox string, message *godog.DocString) error {
return eventually(func() error {
_, client := s.t.getIMAPClient(clientID)
var msgStruct MessageStruct
if err := json.Unmarshal([]byte(message.Content), &msgStruct); err != nil {
return err
}
fetch, err := clientFetch(client, mailbox)
if err != nil {
return err
}
haveMessages := xslices.Map(fetch, newMessageStructFromIMAP)
return matchStructure(haveMessages, msgStruct)
})
}
func (s *scenario) imapClientSeesMessagesInMailbox(clientID string, count int, mailbox string) error {
_, client := s.t.getIMAPClient(clientID)