From 5f7a51731481170a1fcd6dc7259aa13156e2f304 Mon Sep 17 00:00:00 2001 From: Ryan Sundberg Date: Fri, 20 Sep 2024 23:51:15 -0700 Subject: [PATCH] cmd/smoothmq/tester: Create a new queue for each test run --- cmd/smoothmq/tester/tester.go | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) diff --git a/cmd/smoothmq/tester/tester.go b/cmd/smoothmq/tester/tester.go index 9ef9ca8..ca50e1c 100644 --- a/cmd/smoothmq/tester/tester.go +++ b/cmd/smoothmq/tester/tester.go @@ -23,8 +23,6 @@ import ( func Run(c smoothCfg.TesterCommand) { var sentMessages, receivedMessages int - queueUrl := "https://sqs.us-east-1.amazonaws.com/123/test-queue" - // Load the AWS configuration with hardcoded credentials cfg, err := config.LoadDefaultConfig(context.TODO(), config.WithRegion("us-east-1"), @@ -43,6 +41,8 @@ func Run(c smoothCfg.TesterCommand) { var ch chan int + queueUrl := createQueue(sqsClient) + for i := 0; i < c.Senders; i++ { wg.Add(1) go func(id int) { @@ -96,6 +96,18 @@ func GenerateRandomString(n int) string { return string(b) } +func createQueue(client *sqs.Client) string { + queueName := fmt.Sprintf("test-queue-%d", rand.Int()) + i := &sqs.CreateQueueInput{ + QueueName: &queueName, + } + result, err := client.CreateQueue(context.TODO(), i) + if err != nil { + log.Error().Err(err).Send() + } + return *result.QueueUrl +} + func sendMessage(client *sqs.Client, queueUrl string, goroutineID, requestID, batchSize, delaySeconds int) { if batchSize > 1 {