summaryrefslogtreecommitdiffstats
path: root/config/defaultConfigProvider_test.go
diff options
context:
space:
mode:
Diffstat (limited to 'config/defaultConfigProvider_test.go')
-rw-r--r--config/defaultConfigProvider_test.go85
1 files changed, 85 insertions, 0 deletions
diff --git a/config/defaultConfigProvider_test.go b/config/defaultConfigProvider_test.go
index cd6247e60..204861216 100644
--- a/config/defaultConfigProvider_test.go
+++ b/config/defaultConfigProvider_test.go
@@ -17,6 +17,7 @@ import (
"context"
"errors"
"fmt"
+ "slices"
"strconv"
"strings"
"testing"
@@ -353,6 +354,90 @@ func TestDefaultConfigProvider(t *testing.T) {
c.Assert(r.Wait(), qt.IsNil)
})
+
+ c.Run("GetBool", func(c *qt.C) {
+ cfg := New()
+
+ var k string
+ var v bool
+
+ k, v = "foo", true
+
+ cfg.Set(k, v)
+ c.Assert(cfg.Get(k), qt.Equals, v)
+ c.Assert(cfg.GetBool(k), qt.Equals, v)
+ })
+
+ c.Run("GetParams", func(c *qt.C) {
+ cfg := New()
+ k := "foo"
+
+ cfg.Set(k, maps.Params{k: true})
+ c.Assert(cfg.GetParams(k), qt.DeepEquals, maps.Params{
+ k: true,
+ })
+
+ c.Assert(cfg.GetParams("bar"), qt.IsNil)
+ })
+
+ c.Run("Keys", func(c *qt.C) {
+ cfg := New()
+ k := "foo"
+ k2 := "bar"
+
+ cfg.Set(k, maps.Params{k: struct{}{}})
+ cfg.Set(k2, maps.Params{k2: struct{}{}})
+
+ c.Assert(len(cfg.Keys()), qt.Equals, 2)
+
+ got := cfg.Keys()
+ slices.Sort(got)
+
+ want := []string{k, k2}
+ slices.Sort(want)
+
+ c.Assert(got, qt.DeepEquals, want)
+ })
+
+ c.Run("WalkParams", func(c *qt.C) {
+ cfg := New()
+
+ cfg.Set("x", maps.Params{})
+ cfg.Set("y", maps.Params{})
+
+ var got []string
+ cfg.WalkParams(func(params ...maps.KeyParams) bool {
+ got = append(got, params[len(params)-1].Key)
+ return false
+ })
+
+ want := []string{"", "x", "y"}
+ slices.Sort(got)
+ slices.Sort(want)
+
+ c.Assert(got, qt.DeepEquals, want)
+
+ cfg = New()
+ cfg.WalkParams(func(params ...maps.KeyParams) bool {
+ return true
+ })
+
+ got = []string{""}
+ want = []string{""}
+ c.Assert(got, qt.DeepEquals, want)
+ })
+
+ c.Run("SetDefaults", func(c *qt.C) {
+ cfg := New()
+
+ cfg.SetDefaults(maps.Params{
+ "foo": "bar",
+ "bar": "baz",
+ })
+
+ c.Assert(cfg.Get("foo"), qt.Equals, "bar")
+ c.Assert(cfg.Get("bar"), qt.Equals, "baz")
+ })
}
func BenchmarkDefaultConfigProvider(b *testing.B) {