Merged in feature/momocks (pull request #150)

Decrease Mocks

* feature/nomocks

* nonet

* assertsaws

* assert
This commit is contained in:
Michael McGuinness
2025-05-23 00:20:01 +00:00
parent 36ff8096f3
commit 33d68b7e04
42 changed files with 617 additions and 650 deletions
+8 -16
View File
@@ -3,6 +3,7 @@ package doctextrunner_test
import (
"fmt"
"io"
"regexp"
"strings"
"testing"
"time"
@@ -17,11 +18,9 @@ import (
"queryorchestration/internal/serviceconfig/textract"
"queryorchestration/internal/test"
objectstoremock "queryorchestration/mocks/objectstore"
queuemock "queryorchestration/mocks/queue"
textractmock "queryorchestration/mocks/textract"
"github.com/aws/aws-sdk-go-v2/service/s3"
"github.com/aws/aws-sdk-go-v2/service/sqs"
awstextract "github.com/aws/aws-sdk-go-v2/service/textract"
"github.com/google/uuid"
"github.com/stretchr/testify/assert"
@@ -40,16 +39,16 @@ type DocTextConfig struct {
func TestDocTextRunner(t *testing.T) {
t.Parallel()
cfg := &DocTextConfig{}
net := test.GetNetwork(t)
test.CreateDB(t, cfg, net, &test.CreateDatabaseConfig{})
test.CreateDB(t, cfg)
acfg := test.CreateAWSContainer(t, cfg)
test.SetQueueClient(t, t.Context(), cfg, acfg.ExternalEndpoint)
cfg.QuerySyncURL = test.CreateQueue(t, cfg, test.QuerySyncRunnerName)
mockStore := objectstoremock.NewMockS3Client(t)
cfg.StoreClient = mockStore
mockTextract := textractmock.NewMockTextractClient(t)
cfg.TextractClient = mockTextract
mockQueue := queuemock.NewMockSQSClient(t)
cfg.QueueClient = mockQueue
cfg.QuerySyncURL = "ex"
runner := doctextrunner.New(&doctextrunner.Services{
Text: documenttext.New(cfg),
@@ -133,20 +132,13 @@ func TestDocTextRunner(t *testing.T) {
mock.Anything,
).
Return(&s3.PutObjectOutput{}, nil)
mockQueue.EXPECT().
SendMessage(
mock.Anything,
mock.MatchedBy(func(in *sqs.SendMessageInput) bool {
return *in.QueueUrl == cfg.QuerySyncURL && *in.MessageBody == fmt.Sprintf("{\"id\":\"%s\"}", docId.String())
}),
mock.Anything,
).
Return(&sqs.SendMessageOutput{}, nil)
doc := doctextrunner.Body{
DocumentID: docId,
}
assert.True(t, runner.Process(t.Context(), doc))
test.AssertMessageBody(t, cfg, cfg.GetQuerySyncURL(), regexp.MustCompile(fmt.Sprintf("{\"id\":\"%s\"}", docId.String())))
}
const pdfHelloWorld = `%PDF-1.4