github.com/liamawhite/cli-with-i18n@v6.32.1-0.20171122084555-dede0a5c3448+incompatible/actor/v2action/organization_quota_test.go (about) 1 package v2action_test 2 3 import ( 4 "errors" 5 6 . "github.com/liamawhite/cli-with-i18n/actor/v2action" 7 "github.com/liamawhite/cli-with-i18n/actor/v2action/v2actionfakes" 8 "github.com/liamawhite/cli-with-i18n/api/cloudcontroller/ccerror" 9 "github.com/liamawhite/cli-with-i18n/api/cloudcontroller/ccv2" 10 . "github.com/onsi/ginkgo" 11 . "github.com/onsi/gomega" 12 ) 13 14 var _ = Describe("OrganizationQuota Actions", func() { 15 var ( 16 actor *Actor 17 fakeCloudControllerClient *v2actionfakes.FakeCloudControllerClient 18 ) 19 20 BeforeEach(func() { 21 fakeCloudControllerClient = new(v2actionfakes.FakeCloudControllerClient) 22 actor = NewActor(fakeCloudControllerClient, nil, nil) 23 }) 24 25 Describe("GetOrganizationQuota", func() { 26 Context("when the org quota exists", func() { 27 BeforeEach(func() { 28 fakeCloudControllerClient.GetOrganizationQuotaReturns( 29 ccv2.OrganizationQuota{ 30 GUID: "some-org-quota-guid", 31 Name: "some-org-quota", 32 }, 33 ccv2.Warnings{"warning-1"}, 34 nil, 35 ) 36 }) 37 38 It("returns the org quota and warnings", func() { 39 orgQuota, warnings, err := actor.GetOrganizationQuota("some-org-quota-guid") 40 Expect(err).ToNot(HaveOccurred()) 41 Expect(orgQuota).To(Equal(OrganizationQuota{ 42 GUID: "some-org-quota-guid", 43 Name: "some-org-quota", 44 })) 45 Expect(warnings).To(Equal(Warnings{"warning-1"})) 46 47 Expect(fakeCloudControllerClient.GetOrganizationQuotaCallCount()).To(Equal(1)) 48 Expect(fakeCloudControllerClient.GetOrganizationQuotaArgsForCall(0)).To(Equal( 49 "some-org-quota-guid")) 50 }) 51 }) 52 53 Context("when the org quota does not exist", func() { 54 BeforeEach(func() { 55 fakeCloudControllerClient.GetOrganizationQuotaReturns(ccv2.OrganizationQuota{}, nil, ccerror.ResourceNotFoundError{}) 56 }) 57 58 It("returns an OrganizationQuotaNotFoundError", func() { 59 _, _, err := actor.GetOrganizationQuota("some-org-quota-guid") 60 Expect(err).To(MatchError(OrganizationQuotaNotFoundError{GUID: "some-org-quota-guid"})) 61 }) 62 }) 63 64 Context("when the cloud controller client returns an error", func() { 65 var expectedErr error 66 67 BeforeEach(func() { 68 expectedErr = errors.New("some org quota error") 69 fakeCloudControllerClient.GetOrganizationQuotaReturns(ccv2.OrganizationQuota{}, nil, expectedErr) 70 }) 71 72 It("returns the error", func() { 73 _, _, err := actor.GetOrganizationQuota("some-org-quota-guid") 74 Expect(err).To(MatchError(expectedErr)) 75 }) 76 }) 77 }) 78 })