github.com/ngocphuongnb/tetua@v0.0.7-alpha/app/config/setting_test.go (about) 1 package config 2 3 import ( 4 "testing" 5 6 "github.com/stretchr/testify/assert" 7 ) 8 9 func TestSettings(t *testing.T) { 10 var newSettings = []*SettingItem{ 11 {"app_name", "App Testing", "input"}, 12 {"test_key", "Test value", "input"}, 13 } 14 var overrideSettings = []*SettingItem{ 15 {"app_name", "App Testing", "input"}, 16 {"test_key", "Test value 2", "input"}, 17 } 18 19 assert.Equal(t, "Tetua", Setting("app_desc")) 20 21 Settings(defaultSettings) 22 assert.Equal(t, "Tetua", Setting("app_name")) 23 24 Settings(newSettings) 25 assert.Equal(t, "App Testing", Setting("app_name")) 26 assert.Equal(t, "Test value", Setting("test_key")) 27 28 Settings(newSettings, overrideSettings) 29 assert.Equal(t, "Test value 2", Setting("test_key")) 30 assert.Equal(t, "Tetua", Setting("app_desc")) 31 assert.Equal(t, "", Setting("unknown")) 32 assert.Equal(t, "default", Setting("unknown", "default")) 33 assert.Equal(t, settings, AllSettings()) 34 }