github.com/kubeshop/testkube@v1.17.23/cmd/kubectl-testkube/config/config_test.go (about) 1 package config 2 3 import ( 4 "os" 5 "testing" 6 7 "github.com/stretchr/testify/assert" 8 ) 9 10 func TestSave(t *testing.T) { 11 // override default directory 12 dir, err := os.MkdirTemp("", "test-config-save") 13 assert.NoError(t, err) 14 defaultDirectory = dir 15 16 t.Run("test save into default storage", func(t *testing.T) { 17 err := Save(Data{}) 18 assert.NoError(t, err) 19 }) 20 21 t.Run("test load stored config into default storage", func(t *testing.T) { 22 err := Save(Data{Namespace: "some", TelemetryEnabled: true}) 23 assert.NoError(t, err) 24 data, err := Load() 25 assert.NoError(t, err) 26 assert.Equal(t, "some", data.Namespace) 27 assert.Equal(t, true, data.TelemetryEnabled) 28 }) 29 } 30 31 func TestSaveTelemetryEnabled(t *testing.T) { 32 33 dir, err := os.MkdirTemp("", "test-config-save") 34 assert.NoError(t, err) 35 36 // create homedir config file 37 s := Storage{Dir: dir} 38 err = s.Init() 39 assert.NoError(t, err) 40 41 t.Run("check if telemetry system is enabled", func(t *testing.T) { 42 // given / when 43 d, err := s.Load() 44 45 // then 46 assert.NoError(t, err) 47 assert.Equal(t, true, d.TelemetryEnabled) 48 49 }) 50 51 t.Run("check if telemetry system is disabled", func(t *testing.T) { 52 // given 53 d, err := s.Load() 54 assert.NoError(t, err) 55 56 d.DisableAnalytics() 57 err = s.Save(d) 58 assert.NoError(t, err) 59 60 // when 61 d, err = s.Load() 62 63 // then 64 assert.NoError(t, err) 65 assert.Equal(t, false, d.TelemetryEnabled) 66 67 }) 68 69 }