targetedSpaceRequirement requirements.Requirement applicationRequirement *requirementsfakes.FakeApplicationRequirement cmd *application.Events ) BeforeEach(func() { cmd = &application.Events{} ui = new(testterm.FakeUI) eventsRepo = new(appeventsfakes.FakeAppEventsRepository) config = new(coreconfigfakes.FakeRepository) config.OrganizationFieldsReturns(models.OrganizationFields{Name: "my-org"}) config.SpaceFieldsReturns(models.SpaceFields{Name: "my-space"}) config.UsernameReturns("my-user") deps = commandregistry.Dependency{ UI: ui, RepoLocator: api.RepositoryLocator{}.SetAppEventsRepository(eventsRepo), Config: config, } flagContext = flags.NewFlagContext(cmd.MetaData().Flags) reqFactory = new(requirementsfakes.FakeFactory) loginRequirement = &passingRequirement{Name: "login-requirement"} reqFactory.NewLoginRequirementReturns(loginRequirement) targetedSpaceRequirement = &passingRequirement{Name: "targeted-space-requirement"} reqFactory.NewTargetedSpaceRequirementReturns(targetedSpaceRequirement) applicationRequirement = new(requirementsfakes.FakeApplicationRequirement)
configRepo = new(coreconfigfakes.FakeRepository) deps = commandregistry.Dependency{ UI: ui, Config: configRepo, } quotaRepo = new(spacequotasfakes.FakeSpaceQuotaRepository) deps.RepoLocator = deps.RepoLocator.SetSpaceQuotaRepository(quotaRepo) spaceRepo = new(spacesfakes.FakeSpaceRepository) deps.RepoLocator = deps.RepoLocator.SetSpaceRepository(spaceRepo) flagContext = flags.NewFlagContext(cmd.MetaData().Flags) cmd = spacequota.SetSpaceQuota{} cmd.SetDependency(deps, false) configRepo.UsernameReturns("my-user") }) Describe("Requirements", func() { Context("when provided a quota and space", func() { var reqs []requirements.Requirement BeforeEach(func() { var err error flagContext.Parse("space", "space-quota") reqs, err = cmd.Requirements(requirementsFactory, flagContext) Expect(err).NotTo(HaveOccurred()) }) It("returns a LoginRequirement", func() {