Context("when paid services are allowed", func() { BeforeEach(func() { quota.NonBasicServicesAllowed = true }) It("changes to non-paid service plan when --disallow flag is provided", func() { quotaRepo.FindByNameReturns(quota, nil) // updating an existing quota runCommand("--disallow-paid-service-plans", "quota-name") Expect(quotaRepo.UpdateArgsForCall(0).NonBasicServicesAllowed).To(BeFalse()) }) }) }) It("shows an error when updating fails", func() { quotaRepo.UpdateReturns(errors.New("I accidentally a quota")) runCommand("-m", "1M", "dead-serious") Expect(ui.Outputs()).To(ContainSubstrings([]string{"FAILED"})) }) It("shows a message explaining the update", func() { quota.Name = "i-love-ui" quotaRepo.FindByNameReturns(quota, nil) runCommand("-m", "50G", "i-love-ui") Expect(ui.Outputs()).To(ContainSubstrings( []string{"Updating quota", "i-love-ui", "as", "my-user"}, []string{"OK"}, )) })