var ( quota models.QuotaFields ) BeforeEach(func() { quota = models.QuotaFields{ Name: "non-default-quota", GUID: "non-default-quota-guid", } }) It("creates an org with a non-default quota", func() { quotaRepo.FindByNameReturns(quota, nil) runCommand("-q", "non-default-quota", "my-org") Expect(quotaRepo.FindByNameArgsForCall(0)).To(Equal("non-default-quota")) Expect(orgRepo.CreateArgsForCall(0).QuotaDefinition.GUID).To(Equal("non-default-quota-guid")) Expect(ui.Outputs()).To(ContainSubstrings( []string{"Creating org", "my-org"}, []string{"OK"}, )) }) It("fails and warns the user when the quota cannot be found", func() { quotaRepo.FindByNameReturns(models.QuotaFields{}, errors.New("Could not find quota")) runCommand("-q", "non-default-quota", "my-org") Expect(ui.Outputs()).To(ContainSubstrings( []string{"Creating org", "my-org"}, []string{"Could not find quota"}, ))
Context("when logged in", func() { BeforeEach(func() { org := models.Organization{} org.Name = "my-org" org.GUID = "my-org-guid" orgReq := new(requirementsfakes.FakeOrganizationRequirement) orgReq.GetOrganizationReturns(org) requirementsFactory.NewOrganizationRequirementReturns(orgReq) requirementsFactory.NewLoginRequirementReturns(requirements.Passing{}) }) It("assigns a quota to an org", func() { quota := models.QuotaFields{Name: "my-quota", GUID: "my-quota-guid"} quotaRepo.FindByNameReturns(quota, nil) runCommand("my-org", "my-quota") Expect(ui.Outputs()).To(ContainSubstrings( []string{"Setting quota", "my-quota", "my-org", "my-user"}, []string{"OK"}, )) Expect(quotaRepo.FindByNameArgsForCall(0)).To(Equal("my-quota")) orgGUID, quotaGUID := quotaRepo.AssignQuotaToOrgArgsForCall(0) Expect(orgGUID).To(Equal("my-org-guid")) Expect(quotaGUID).To(Equal("my-quota-guid")) }) }) })