func main() { app, err := app.New() if err != nil { return } app.Run(os.Args) }
func main() { fileutils.SetTmpPathPrefix("cf") if os.Getenv("CF_COLOR") == "" { os.Setenv("CF_COLOR", "true") } termUI := terminal.NewUI() assignTemplates() configRepo := configuration.NewConfigurationDiskRepository() config := loadConfig(termUI, configRepo) repoLocator := api.NewRepositoryLocator(config, configRepo, map[string]net.Gateway{ "auth": net.NewUAAGateway(), "cloud-controller": net.NewCloudControllerGateway(), "uaa": net.NewUAAGateway(), }) cmdFactory := commands.NewFactory(termUI, config, configRepo, repoLocator) reqFactory := requirements.NewFactory(termUI, config, repoLocator) cmdRunner := commands.NewRunner(cmdFactory, reqFactory) app, err := app.NewApp(cmdRunner) if err != nil { return } app.Run(os.Args) }
func main() { defer func() { maybeSomething := recover() if maybeSomething != nil { displayCrashDialog() } }() fileutils.SetTmpPathPrefix("cf") if os.Getenv("CF_COLOR") == "" { os.Setenv("CF_COLOR", "true") } termUI := terminal.NewUI() configRepo := configuration.NewConfigurationDiskRepository() config := loadConfig(termUI, configRepo) manifestRepo := manifest.NewManifestDiskRepository() repoLocator := api.NewRepositoryLocator(config, configRepo, map[string]net.Gateway{ "auth": net.NewUAAGateway(), "cloud-controller": net.NewCloudControllerGateway(), "uaa": net.NewUAAGateway(), }) cmdFactory := commands.NewFactory(termUI, config, configRepo, manifestRepo, repoLocator) reqFactory := requirements.NewFactory(termUI, config, repoLocator) cmdRunner := commands.NewRunner(cmdFactory, reqFactory) app, err := app.NewApp(cmdRunner) if err != nil { return } app.Run(os.Args) }
func main() { defer handlePanics() deps := setupDependencies() defer deps.configRepo.Close() cmdFactory := commands.NewFactory(deps.termUI, deps.configRepo, deps.manifestRepo, deps.apiRepoLocator) reqFactory := requirements.NewFactory(deps.termUI, deps.configRepo, deps.apiRepoLocator) cmdRunner := commands.NewRunner(cmdFactory, reqFactory) app, err := app.NewApp(cmdRunner) if err != nil { return } app.Run(os.Args) }
}) cmdFactory := commands.NewFactory(ui, config, manifestRepo, repoLocator) cmdRunner := &FakeRunner{cmdFactory: cmdFactory} for _, cmdName := range expectedCommandNames { output := bytes.NewBuffer(make([]byte, 1024)) trace.SetStdout(output) trace.EnableTrace() app, err := NewApp(cmdRunner) Expect(err).NotTo(HaveOccurred()) Expect(output.String()).To(ContainSubstring("VERSION:\n" + cf.Version)) app.Run([]string{"", cmdName}) Expect(cmdRunner.cmdName).To(Equal(cmdName)) } }) }) type FakeRunner struct { cmdFactory commands.Factory cmdName string } func (runner *FakeRunner) RunCmdByName(cmdName string, c *cli.Context) (err error) { _, err = runner.cmdFactory.GetByCmdName(cmdName) if err != nil { GinkgoT().Fatal("Error instantiating command with name", cmdName) return