Skip to content

Commit a477604

Browse files
committed
chore: Add configuration test.
1 parent de82ae2 commit a477604

File tree

2 files changed

+43
-5
lines changed

2 files changed

+43
-5
lines changed
Lines changed: 38 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,38 @@
1+
package config
2+
3+
import (
4+
"github.com/stretchr/testify/assert"
5+
"os"
6+
"strconv"
7+
"testing"
8+
)
9+
10+
func TestReadConfig(t *testing.T) {
11+
expUrlRequestQueue := "url_request_queue"
12+
err := os.Setenv("QUEUE_URL_REQUEST_QUEUE", expUrlRequestQueue)
13+
assert.Nil(t, err)
14+
15+
expScrResQueue := "scraping_res_queue"
16+
err = os.Setenv("QUEUE_SCRAPING_RESULT_QUEUE", expScrResQueue)
17+
assert.Nil(t, err)
18+
19+
expNotificationQueue := "test_notifications"
20+
err = os.Setenv("QUEUE_NOTIFICATION_QUEUE", expNotificationQueue)
21+
assert.Nil(t, err)
22+
23+
expQueueUrl := "test_url"
24+
err = os.Setenv("QUEUE_URL", expQueueUrl)
25+
assert.Nil(t, err)
26+
27+
expQueueConcurrency := 50
28+
err = os.Setenv("QUEUE_CONCURRENCY", strconv.Itoa(expQueueConcurrency))
29+
assert.Nil(t, err)
30+
31+
conf, err := ReadConfig()
32+
assert.Nil(t, err)
33+
assert.Equal(t, expUrlRequestQueue, conf.Queue.UrlRequestQueue)
34+
assert.Equal(t, expScrResQueue, conf.Queue.ScrapingResultQueue)
35+
assert.Equal(t, expNotificationQueue, conf.Queue.NotificationQueue)
36+
assert.Equal(t, expQueueUrl, conf.Queue.Url)
37+
assert.Equal(t, expQueueConcurrency, conf.Queue.Concurrency)
38+
}

internal/config/queue.go

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -2,9 +2,9 @@ package config
22

33
//QueueConfig queue configuration
44
type QueueConfig struct {
5-
UrlRequestQueue string `default:"data-scraping-asd"` //UrlRequestQueue name to listen to the new events
6-
ScrapingResultQueue string `default:"storage-update-asd"` //Queue name to send processed ApiSpecDoc
7-
NotificationQueue string `default:"gateway-scrape_notifications"` //Queue name to notify a user about error or success (if required)
8-
Url string `default:"amqp://guest:guest@localhost:5672/"` //RabbitMQ url
9-
Concurrency int `default:"30"` //Number of parallel handlers
5+
UrlRequestQueue string `default:"data-scraping-asd" envconfig:"URL_REQUEST_QUEUE"` //UrlRequestQueue name to listen to the new events
6+
ScrapingResultQueue string `default:"storage-update-asd" envconfig:"SCRAPING_RESULT_QUEUE"` //Queue name to send processed ApiSpecDoc
7+
NotificationQueue string `default:"gateway-scrape-notifications" envconfig:"NOTIFICATION_QUEUE"` //Queue name to notify a user about error or success (if required)
8+
Url string `default:"amqp://guest:guest@localhost:5672/"` //RabbitMQ url
9+
Concurrency int `default:"30"` //Number of parallel handlers
1010
}

0 commit comments

Comments
 (0)