configRepo coreconfig.Repository deps commandregistry.Dependency ) updateCommandDependency := func(pluginCall bool) { deps.UI = ui deps.RepoLocator = deps.RepoLocator.SetDomainRepository(domainRepo) deps.Config = configRepo commandregistry.Commands.SetCommand(commandregistry.Commands.FindCommand("create-domain").SetDependency(deps, pluginCall)) } BeforeEach(func() { requirementsFactory = new(requirementsfakes.FakeFactory) requirementsFactory.NewLoginRequirementReturns(requirements.Passing{}) domainRepo = new(apifakes.FakeDomainRepository) configRepo = testconfig.NewRepositoryWithAccessToken(coreconfig.TokenInfo{Username: "******"}) }) runCommand := func(args ...string) bool { ui = new(testterm.FakeUI) return testcmd.RunCLICommand("create-domain", args, requirementsFactory, updateCommandDependency, false, ui) } It("fails with usage", func() { runCommand("") Expect(ui.Outputs()).To(ContainSubstrings( []string{"Incorrect Usage", "Requires", "arguments"}, )) runCommand("org1") Expect(ui.Outputs()).To(ContainSubstrings(
Expect(output).ToNot(ContainSubstrings([]string{"API endpoint:"})) Expect(output).To(ContainSubstrings([]string{"Not logged in", "Use", "log in"})) }) }) Context("when an api endpoint is set and the user logged in", func() { var config coreconfig.ReadWriter BeforeEach(func() { accessToken := coreconfig.TokenInfo{ UserGUID: "my-user-guid", Username: "******", Email: "my-user-email", } config = testconfig.NewRepositoryWithAccessToken(accessToken) config.SetAPIEndpoint("https://test.example.org") config.SetAPIVersion("☃☃☃") }) Describe("tells the user what is set in the config", func() { var output []string JustBeforeEach(func() { output = io_helpers.CaptureOutput(func() { ui := NewUI(os.Stdin, os.Stdout, NewTeePrinter(os.Stdout), fakeLogger) ui.ShowConfiguration(config) }) }) It("tells the user which api endpoint is set", func() {