// SPDX-License-Identifier: Apache-2.0 // Copyright Authors of K9s package config_test import ( "testing" "github.com/derailed/k9s/internal/config" "github.com/derailed/tcell/v2" "github.com/derailed/tview" "github.com/stretchr/testify/assert" ) func TestColor(t *testing.T) { uu := map[string]tcell.Color{ "blah": tcell.ColorDefault, "blue": tcell.ColorBlue.TrueColor(), "#ffffff": tcell.NewHexColor(16777215), "#ff0000": tcell.NewHexColor(16711680), } for k := range uu { c, u := k, uu[k] t.Run(k, func(t *testing.T) { assert.Equal(t, u, config.NewColor(c).Color()) }) } } func TestSkinNone(t *testing.T) { s := config.NewStyles() assert.Nil(t, s.Load("testdata/empty_skin.yaml")) s.Update() assert.Equal(t, "#5f9ea0", s.Body().FgColor.String()) assert.Equal(t, "#000000", s.Body().BgColor.String()) assert.Equal(t, "#000000", s.Table().BgColor.String()) assert.Equal(t, tcell.ColorCadetBlue.TrueColor(), s.FgColor()) assert.Equal(t, tcell.ColorBlack.TrueColor(), s.BgColor()) assert.Equal(t, tcell.ColorBlack.TrueColor(), tview.Styles.PrimitiveBackgroundColor) } func TestSkin(t *testing.T) { s := config.NewStyles() assert.Nil(t, s.Load("testdata/black_and_wtf.yaml")) s.Update() assert.Equal(t, "#ffffff", s.Body().FgColor.String()) assert.Equal(t, "#000000", s.Body().BgColor.String()) assert.Equal(t, "#000000", s.Table().BgColor.String()) assert.Equal(t, tcell.ColorWhite.TrueColor(), s.FgColor()) assert.Equal(t, tcell.ColorBlack.TrueColor(), s.BgColor()) assert.Equal(t, tcell.ColorBlack.TrueColor(), tview.Styles.PrimitiveBackgroundColor) } func TestSkinNotExits(t *testing.T) { s := config.NewStyles() assert.NotNil(t, s.Load("testdata/blee.yaml")) } func TestSkinBoarked(t *testing.T) { s := config.NewStyles() assert.NotNil(t, s.Load("testdata/skin_boarked.yaml")) }