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
+15 -34
View File
@@ -3,31 +3,28 @@ package queryapi_test
import (
"fmt"
"net/http"
"regexp"
"testing"
queryapi "queryorchestration/api/queryAPI"
"queryorchestration/internal/collector"
collectorset "queryorchestration/internal/collector/set"
"queryorchestration/internal/database/repository"
"queryorchestration/internal/serviceconfig"
"queryorchestration/internal/test"
queuemock "queryorchestration/mocks/queue"
"github.com/aws/aws-sdk-go-v2/service/sqs"
"github.com/stretchr/testify/assert"
"github.com/stretchr/testify/mock"
"github.com/stretchr/testify/require"
)
func TestSetCollector(t *testing.T) {
t.Parallel()
cfg := &ClientConfig{}
cfg.ClientSyncURL = "example"
net := test.GetNetwork(t)
test.CreateDB(t, cfg, net, &test.CreateDatabaseConfig{})
cfg := &ControllerConfig{}
test.CreateDB(t, cfg)
acfg := test.CreateAWSContainer(t, cfg)
mockSQS := queuemock.NewMockSQSClient(t)
cfg.QueueClient = mockSQS
test.SetQueueClient(t, t.Context(), cfg, acfg.ExternalEndpoint)
cfg.ClientSyncURL = test.CreateQueue(t, cfg, test.ClientSyncRunnerName)
svc := createControllerServices(cfg)
cons := queryapi.NewControllers(svc)
id := "clientid"
@@ -53,37 +50,21 @@ func TestSetCollector(t *testing.T) {
}
ctx, rec := createContextWithBody(t, body)
cons := queryapi.NewControllers(&queryapi.Services{
CollectorSet: collectorset.New(cfg, &collectorset.Services{
Collector: collector.New(cfg),
}),
})
mockSQS.EXPECT().
SendMessage(
mock.Anything,
mock.MatchedBy(func(in *sqs.SendMessageInput) bool {
return *in.QueueUrl == cfg.GetClientSyncURL() && *in.MessageBody == fmt.Sprintf("{\"id\":\"%s\"}", id)
}),
mock.Anything,
).
Return(&sqs.SendMessageOutput{}, nil)
err = cons.SetCollectorByClientId(ctx, id)
require.NoError(t, err)
assert.Equal(t, http.StatusOK, rec.Code)
assert.Empty(t, rec.Body.String())
test.AssertMessageBody(t, cfg, cfg.GetClientSyncURL(), regexp.MustCompile(fmt.Sprintf("{\"id\":\"%s\"}", id)))
}
func TestGetCollectorByClientId(t *testing.T) {
t.Parallel()
cfg := &serviceconfig.BaseConfig{}
net := test.GetNetwork(t)
test.CreateDB(t, cfg, net, &test.CreateDatabaseConfig{})
cfg := &ControllerConfig{}
test.CreateDB(t, cfg)
cons := queryapi.NewControllers(&queryapi.Services{
Collector: collector.New(cfg),
})
svc := createControllerServices(cfg)
cons := queryapi.NewControllers(svc)
id := "clientid"