}) It("returns the error", func() { _, _, err := actor.GetApplicationByNameAndSpace("some-app", "some-space-guid") Expect(err).To(MatchError(expectedError)) }) }) }) Describe("GetRouteApplications", func() { Context("when the CC client returns no errors", func() { BeforeEach(func() { fakeCloudControllerClient.GetRouteApplicationsReturns( []ccv2.Application{ { GUID: "application-guid", Name: "application-name", }, }, ccv2.Warnings{"route-applications-warning"}, nil) }) It("returns the applications bound to the route and warnings", func() { applications, warnings, err := actor.GetRouteApplications("route-guid", nil) Expect(fakeCloudControllerClient.GetRouteApplicationsCallCount()).To(Equal(1)) Expect(fakeCloudControllerClient.GetRouteApplicationsArgsForCall(0)).To(Equal("route-guid")) Expect(err).ToNot(HaveOccurred()) Expect(warnings).To(ConsistOf("route-applications-warning")) Expect(applications).To(ConsistOf( Application{ GUID: "application-guid", Name: "application-name",
Expect(fakeCloudControllerClient.GetRouteApplicationsCallCount()).To(Equal(1)) routeGUID, queries := fakeCloudControllerClient.GetRouteApplicationsArgsForCall(0) Expect(routeGUID).To(Equal("not-orphaned-route-guid-3")) Expect(queries).To(BeNil()) }) }) Context("when there are warnings", func() { BeforeEach(func() { fakeCloudControllerClient.GetSpaceRoutesReturns([]ccv2.Route{ ccv2.Route{GUID: "route-guid-1"}, ccv2.Route{GUID: "route-guid-2"}, }, ccv2.Warnings{"get-routes-warning"}, nil) fakeCloudControllerClient.GetRouteApplicationsReturns(nil, ccv2.Warnings{"get-applications-warning"}, nil) fakeCloudControllerClient.GetSharedDomainReturns(ccv2.Domain{GUID: "some-guid"}, ccv2.Warnings{"get-shared-domain-warning"}, nil) }) It("returns all the warnings", func() { _, warnings, err := actor.GetOrphanedRoutesBySpace("space-guid") Expect(err).NotTo(HaveOccurred()) Expect(warnings).To(ConsistOf("get-routes-warning", "get-applications-warning", "get-shared-domain-warning", "get-applications-warning", "get-shared-domain-warning")) }) }) Context("when the spaces routes API request returns an error", func() { var expectedErr error BeforeEach(func() { expectedErr = errors.New("spaces routes error")