package queue_test import ( "testing" "queryorchestration/internal/serviceconfig/queue" "queryorchestration/internal/test" "github.com/stretchr/testify/assert" "github.com/stretchr/testify/require" ) func TestReceive(t *testing.T) { t.Parallel() cfg := &AWSConfig{} acfg := test.CreateAWSContainer(t, cfg) test.SetQueueClient(t, t.Context(), cfg, acfg.ExternalEndpoint) cfg.QueryURL = test.CreateQueue(t, cfg, test.QueryRunnerName) err := cfg.SendToQueue(t.Context(), &queue.SendParams{ QueueURL: cfg.GetQueryURL(), Body: struct { Field string }{ Field: "value", }, }) require.NoError(t, err) params := &queue.ReceiveParams{ QueueURL: cfg.GetQueryURL(), } ares, err := cfg.ReceiveFromQueue(t.Context(), params) require.NoError(t, err) require.Len(t, ares.Messages, 1) assert.Equal(t, *ares.Messages[0].Body, `{"Field":"value"}`) }