Path: blob/main/pkg/integrations/v2/app_agent_receiver/config_test.go
5371 views
package app_agent_receiver12import (3"testing"45"github.com/stretchr/testify/require"6"gopkg.in/yaml.v2"7)89func TestConfig_DefaultConfig(t *testing.T) {10var cfg Config11cb := `12test-conf: test-val`13err := yaml.Unmarshal([]byte(cb), &cfg)14require.NoError(t, err)15require.Equal(t, []string(nil), cfg.Server.CORSAllowedOrigins)16require.Equal(t, "127.0.0.1", cfg.Server.Host)17require.Equal(t, 12347, cfg.Server.Port)18require.Equal(t, true, cfg.Server.RateLimiting.Enabled)19}2021func TestConfig_EnableRateLimitNoRPS(t *testing.T) {22var cfg Config23cb := `24server:25rate_limiting:26enabled: true`27err := yaml.Unmarshal([]byte(cb), &cfg)28require.NoError(t, err)29require.Equal(t, true, cfg.Server.RateLimiting.Enabled)30require.Equal(t, 100.0, cfg.Server.RateLimiting.RPS)31require.Equal(t, 50, cfg.Server.RateLimiting.Burstiness)32}3334func TestConfig_EnableRateLimitRPS(t *testing.T) {35var cfg Config36cb := `37server:38rate_limiting:39enabled: true40rps: 142`41err := yaml.Unmarshal([]byte(cb), &cfg)42require.NoError(t, err)43require.Equal(t, true, cfg.Server.RateLimiting.Enabled)44require.Equal(t, 142.0, cfg.Server.RateLimiting.RPS)45require.Equal(t, 50, cfg.Server.RateLimiting.Burstiness)46}4748func TestConfig_MultipleUnmarshals(t *testing.T) {49var cfg1 Config50cb1 := `51sourcemaps:52download_origins: ["one"]53logs_labels:54app: frontend55one: two`56var cfg2 Config57cb2 := `58logs_labels:59app: backend60bar: baz`6162err := yaml.UnmarshalStrict([]byte(cb1), &cfg1)63require.NoError(t, err)64err = yaml.UnmarshalStrict([]byte(cb2), &cfg2)65require.NoError(t, err)6667require.Equal(t, map[string]string{68"app": "frontend",69"one": "two",70}, cfg1.LogsLabels)71require.Equal(t, []string{"one"}, cfg1.SourceMaps.DownloadFromOrigins)7273require.Equal(t, map[string]string{74"app": "backend",75"bar": "baz",76}, cfg2.LogsLabels)77require.Equal(t, []string{"*"}, cfg2.SourceMaps.DownloadFromOrigins)78}798081