github.com/ForceCLI/config@v0.0.0-20230217143549-9149d42a3c99/config_test.go (about) 1 package config_test 2 3 import ( 4 "fmt" 5 "github.com/ForceCLI/config" 6 "io/ioutil" 7 "os" 8 "testing" 9 ) 10 11 func ExampleNewConfig() { 12 conf := config.NewConfig("myapp") 13 fmt.Println(conf.Base) 14 // Output: myapp 15 } 16 17 func ExampleConfig_Save() { 18 conf := config.NewConfig("myapp") 19 conf.Save("logins", "user@example.org", "12345") 20 password, _ := conf.Load("logins", "user@example.org") 21 fmt.Println(password) 22 // Output: 12345 23 } 24 25 func ExampleConfig_Load() { 26 conf := config.NewConfig("myapp") 27 conf.Save("logins", "user@example.org", "12345") 28 password, _ := conf.Load("logins", "user@example.org") 29 fmt.Println(password) 30 // Output: 12345 31 } 32 33 func ExampleConfig_List() { 34 conf := config.NewConfig("myapp") 35 conf.Save("logins", "user@example.org", "12345") 36 conf.Save("logins", "user2@example.org", "12345") 37 logins, _ := conf.List("logins") 38 fmt.Println(logins) 39 // Output: [user2@example.org user@example.org] 40 } 41 42 func ExampleConfig_Delete() { 43 conf := config.NewConfig("myapp") 44 conf.Save("logins", "user@example.org", "12345") 45 conf.Save("logins", "user2@example.org", "12345") 46 conf.Delete("logins", "user2@example.org") 47 logins, _ := conf.List("logins") 48 fmt.Println(logins) 49 // Output: [user@example.org] 50 } 51 52 func TestLocalConfig(t *testing.T) { 53 tempDir, _ := ioutil.TempDir("", "config-test") 54 os.Chdir(tempDir) 55 conf := config.NewConfig("myapp") 56 conf.SaveGlobal("logins", "user@example.org", "00000") 57 conf.SaveLocal("logins", "user@example.org", "12345") 58 password, _ := conf.LoadLocalOrGlobal("logins", "user@example.org") 59 os.RemoveAll(tempDir) 60 if password != "12345" { 61 t.Fatalf("Failed to read local config value") 62 } 63 }