github.com/cloudfoundry-community/cloudfoundry-cli@v6.44.1-0.20240130060226-cda5ed8e89a5+incompatible/integration/helpers/config.go (about) 1 package helpers 2 3 import ( 4 "fmt" 5 "io/ioutil" 6 "os" 7 "path/filepath" 8 9 "code.cloudfoundry.org/cli/util/configv3" 10 11 . "github.com/onsi/ginkgo" 12 . "github.com/onsi/gomega" 13 ) 14 15 func TurnOffColors() { 16 Expect(os.Setenv("CF_COLOR", "false")).To(Succeed()) 17 } 18 19 func TurnOnExperimental() { 20 Expect(os.Setenv("CF_CLI_EXPERIMENTAL", "true")).To(Succeed()) 21 } 22 23 func TurnOffExperimental() { 24 Expect(os.Unsetenv("CF_CLI_EXPERIMENTAL")).To(Succeed()) 25 } 26 27 func TurnOnExperimentalLogin() { 28 Expect(os.Setenv("CF_EXPERIMENTAL_LOGIN", "true")).To(Succeed()) 29 } 30 31 func TurnOffExperimentalLogin() { 32 Expect(os.Unsetenv("CF_EXPERIMENTAL_LOGIN")).To(Succeed()) 33 } 34 35 func SetHomeDir() string { 36 var err error 37 homeDir, err := ioutil.TempDir("", "cli-integration-test") 38 Expect(err).NotTo(HaveOccurred()) 39 40 Expect(os.Setenv("CF_HOME", homeDir)).To(Succeed()) 41 Expect(os.Setenv("CF_PLUGIN_HOME", homeDir)).To(Succeed()) 42 43 GinkgoWriter.Write([]byte(fmt.Sprintln("\nHOME DIR>", homeDir))) 44 return homeDir 45 } 46 47 func SetupSynchronizedSuite(setup func()) { 48 homeDir := SetHomeDir() 49 SetAPI() 50 LoginCF() 51 setup() 52 DestroyHomeDir(homeDir) 53 } 54 55 func DestroyHomeDir(homeDir string) { 56 if homeDir != "" { 57 Expect(os.RemoveAll(homeDir)).To(Succeed()) 58 } 59 } 60 61 func GetConfig() *configv3.Config { 62 c, err := configv3.LoadConfig() 63 Expect(err).ToNot(HaveOccurred()) 64 return c 65 } 66 67 func SetConfig(cb func(conf *configv3.Config)) { 68 config, err := configv3.LoadConfig() 69 Expect(err).ToNot(HaveOccurred()) 70 71 cb(config) 72 73 err = configv3.WriteConfig(config) 74 Expect(err).ToNot(HaveOccurred()) 75 } 76 77 func SetConfigContent(dir string, rawConfig string) { 78 err := os.MkdirAll(filepath.Join(dir), 0777) 79 Expect(err).ToNot(HaveOccurred()) 80 err = ioutil.WriteFile(filepath.Join(dir, "config.json"), []byte(rawConfig), 0644) 81 Expect(err).ToNot(HaveOccurred()) 82 } 83 84 func ExpiredAccessToken() string { 85 return "bearer eyJhbGciOiJSUzI1NiIsImtpZCI6ImxlZ2FjeS10b2tlbi1rZXkiLCJ0eXAiOiJKV1QifQ.eyJqdGkiOiJiMjZmMTFjMWNhYmI0ZmY0ODhlN2RhYTJkZTQxMTA4NiIsInN1YiI6IjBjZWMwY2E4LTA5MmYtNDkzYy1hYmExLWM4ZTZiMTRiODM3NiIsInNjb3BlIjpbIm9wZW5pZCIsInJvdXRpbmcucm91dGVyX2dyb3Vwcy53cml0ZSIsInNjaW0ucmVhZCIsImNsb3VkX2NvbnRyb2xsZXIuYWRtaW4iLCJ1YWEudXNlciIsInJvdXRpbmcucm91dGVyX2dyb3Vwcy5yZWFkIiwiY2xvdWRfY29udHJvbGxlci5yZWFkIiwicGFzc3dvcmQud3JpdGUiLCJjbG91ZF9jb250cm9sbGVyLndyaXRlIiwiZG9wcGxlci5maXJlaG9zZSIsInNjaW0ud3JpdGUiXSwiY2xpZW50X2lkIjoiY2YiLCJjaWQiOiJjZiIsImF6cCI6ImNmIiwiZ3JhbnRfdHlwZSI6InBhc3N3b3JkIiwidXNlcl9pZCI6IjBjZWMwY2E4LTA5MmYtNDkzYy1hYmExLWM4ZTZiMTRiODM3NiIsIm9yaWdpbiI6InVhYSIsInVzZXJfbmFtZSI6ImFkbWluIiwiZW1haWwiOiJhZG1pbiIsImF1dGhfdGltZSI6MTQ4OTY4Njg0OCwicmV2X3NpZyI6IjgzM2I4N2Q0IiwiaWF0IjoxNDg5Njg2ODQ4LCJleHAiOjE0ODk2ODc0NDgsImlzcyI6Imh0dHBzOi8vdWFhLmJvc2gtbGl0ZS5jb20vb2F1dGgvdG9rZW4iLCJ6aWQiOiJ1YWEiLCJhdWQiOlsic2NpbSIsImNsb3VkX2NvbnRyb2xsZXIiLCJwYXNzd29yZCIsImNmIiwidWFhIiwib3BlbmlkIiwiZG9wcGxlciIsInJvdXRpbmcucm91dGVyX2dyb3VwcyJdfQ.UeWpPsI5GEvhiQ0HzcCno7u80KbceMmnKHxO89saPrnsDOsbC4zwtz9AeEIvuqClXJCzS4WiOfkx7za0yFkR6z4LZlQc6t_9oq9KYMNCavQSsscYvuUXQH0zarvgptqzLU8miO30uFVVfYbRsLnJVu_5A8C1H29Gedky-70irPc1fZm__nFd8UaUyD2aj50B2M_t1lTkZbdzRn-gORhYAMcVUQNc9Mezj04uT9BAA8oKPzkt2yPN4JZddLvetJXjnp6Ug9x9GL1mfQTP7NVAPIVXSV84p8q_3WPOxjNb28dYGYqEfDNZMgu_nV0JSTXCq3l23jDA8ty8tJ_eYYjDBg" 86 }