The open and composable observability and data visualization platform. Visualize metrics, logs, and traces from multiple sources like Prometheus, Loki, Elasticsearch, InfluxDB, Postgres and many more.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 
grafana/pkg/setting/setting_unified_storage_tes...

70 lines
2.0 KiB

package setting
import (
"testing"
"time"
"github.com/stretchr/testify/assert"
)
func TestCfg_setUnifiedStorageConfig(t *testing.T) {
t.Run("read unified_storage configs", func(t *testing.T) {
cfg := NewCfg()
err := cfg.Load(CommandLineArgs{HomePath: "../../", Config: "../../conf/defaults.ini"})
assert.NoError(t, err)
s, err := cfg.Raw.NewSection("unified_storage.playlists.playlist.grafana.app")
assert.NoError(t, err)
_, err = s.NewKey("dualWriterMode", "2")
assert.NoError(t, err)
_, err = s.NewKey("dualWriterPeriodicDataSyncJobEnabled", "true")
assert.NoError(t, err)
_, err = s.NewKey("dataSyncerRecordsLimit", "1001")
assert.NoError(t, err)
_, err = s.NewKey("dataSyncerInterval", "10m")
assert.NoError(t, err)
// Add unified_storage section for index settings
unifiedStorageSection, err := cfg.Raw.NewSection("unified_storage")
assert.NoError(t, err)
_, err = unifiedStorageSection.NewKey("index_min_count", "5")
assert.NoError(t, err)
_, err = unifiedStorageSection.NewKey("index_max_count", "1000")
assert.NoError(t, err)
cfg.setUnifiedStorageConfig()
value, exists := cfg.UnifiedStorage["playlists.playlist.grafana.app"]
assert.Equal(t, exists, true)
assert.Equal(t, value, UnifiedStorageConfig{
DualWriterMode: 2,
DualWriterPeriodicDataSyncJobEnabled: true,
DataSyncerRecordsLimit: 1001,
DataSyncerInterval: time.Minute * 10,
})
// Test that index settings are correctly parsed
assert.Equal(t, 5, cfg.IndexMinCount)
assert.Equal(t, 1000, cfg.IndexMaxCount)
})
t.Run("read unified_storage configs with defaults", func(t *testing.T) {
cfg := NewCfg()
err := cfg.Load(CommandLineArgs{HomePath: "../../", Config: "../../conf/defaults.ini"})
assert.NoError(t, err)
// Don't add any custom index settings, test defaults
cfg.setUnifiedStorageConfig()
// Test that default index settings are applied
assert.Equal(t, 1, cfg.IndexMinCount)
assert.Equal(t, 0, cfg.IndexMaxCount)
})
}