ui = new(testterm.FakeUI) getOrgModel = new(plugin_models.GetOrg_Model) deps = commandregistry.Dependency{ UI: ui, Config: testconfig.NewRepositoryWithDefaults(), RepoLocator: api.RepositoryLocator{}, PluginModels: &commandregistry.PluginModels{ Organization: getOrgModel, }, } reqFactory = new(requirementsfakes.FakeFactory) loginReq = new(requirementsfakes.FakeRequirement) loginReq.ExecuteReturns(nil) reqFactory.NewLoginRequirementReturns(loginReq) orgRequirement = new(requirementsfakes.FakeOrganizationRequirement) orgRequirement.ExecuteReturns(nil) reqFactory.NewOrganizationRequirementReturns(orgRequirement) cmd = organization.ShowOrg{} flagContext = flags.NewFlagContext(cmd.MetaData().Flags) cmd.SetDependency(deps, false) }) Describe("Requirements", func() { Context("when the wrong number of args are provided", func() { BeforeEach(func() { err := flagContext.Parse()
var _ = Describe("ConfigRefreshingRequirement", func() { var ( r Requirement underlyingRequirement *requirementsfakes.FakeRequirement configRefresher *requirementsfakes.FakeConfigRefresher ) BeforeEach(func() { underlyingRequirement = new(requirementsfakes.FakeRequirement) configRefresher = new(requirementsfakes.FakeConfigRefresher) r = NewConfigRefreshingRequirement(underlyingRequirement, configRefresher) }) Describe("Execute", func() { It("tries to execute the underlying requirement", func() { underlyingRequirement.ExecuteReturns(nil) r.Execute() Expect(underlyingRequirement.ExecuteCallCount()).To(Equal(1)) Expect(configRefresher.RefreshCallCount()).To(Equal(0)) }) Context("when the underlying requirement fails", func() { It("refreshes the config", func() { underlyingRequirement.ExecuteReturns(errors.New("TERRIBLE THINGS")) r.Execute() Expect(configRefresher.RefreshCallCount()).To(Equal(1)) })
requirementsFactory = new(requirementsfakes.FakeFactory) config = new(coreconfigfakes.FakeRepository) repoLocator := api.RepositoryLocator{} repoLocator = repoLocator.SetSpaceQuotaRepository(quotaRepo) deps = commandregistry.Dependency{ UI: ui, Config: config, RepoLocator: repoLocator, } reqFactory = new(requirementsfakes.FakeFactory) loginReq = new(requirementsfakes.FakeRequirement) loginReq.ExecuteReturns(nil) reqFactory.NewLoginRequirementReturns(loginReq) targetedOrgReq = new(requirementsfakes.FakeTargetedOrgRequirement) targetedOrgReq.ExecuteReturns(nil) reqFactory.NewTargetedOrgRequirementReturns(targetedOrgReq) minApiVersionReq = new(requirementsfakes.FakeRequirement) minApiVersionReq.ExecuteReturns(nil) reqFactory.NewMinAPIVersionRequirementReturns(minApiVersionReq) cmd = spacequota.CreateSpaceQuota{} flagContext = flags.NewFlagContext(cmd.MetaData().Flags) }) Describe("Requirements", func() {
package requirements_test import ( . "code.cloudfoundry.org/cli/cf/requirements" "code.cloudfoundry.org/cli/cf/requirements/requirementsfakes" "errors" . "github.com/onsi/ginkgo" . "github.com/onsi/gomega" ) var _ = Describe("Requirements", func() { Context("When there are multiple requirements", func() { It("executes all the requirements", func() { r1 := new(requirementsfakes.FakeRequirement) r1.ExecuteReturns(nil) r2 := new(requirementsfakes.FakeRequirement) r2.ExecuteReturns(nil) // SETUP requirements := Requirements{ r1, r2, } // EXECUTE err := requirements.Execute() // ASSERT Expect(err).NotTo(HaveOccurred()) Expect(r1.ExecuteCallCount()).To(Equal(1))