BinaryName: binaryName, })) }) }) Context("when the user is logged in", func() { BeforeEach(func() { fakeConfig.AccessTokenReturns("some-access-token") fakeConfig.RefreshTokenReturns("some-refresh-token") }) DescribeTable("targeting organization check", func(isOrgTargeted bool, checkForTargeted bool, expectedError error) { if isOrgTargeted { fakeConfig.TargetedOrganizationReturns(configv3.Organization{ GUID: "some-org-guid", }) } err := CheckTarget(fakeConfig, checkForTargeted, false) if expectedError != nil { Expect(err).To(MatchError(expectedError)) } else { Expect(err).ToNot(HaveOccurred()) } }, Entry("it returns an error", false, true, NoTargetedOrgError{BinaryName: "faceman"}), Entry("it does not return an error", false, false, nil), Entry("it does not return an error", true, false, nil),
Context("when the API URL is not provided", func() { Context("when the API is not set", func() { It("displays a tip", func() { Expect(err).ToNot(HaveOccurred()) Expect(fakeUI.Out).To(Say("No api endpoint set. Use 'cf api' to set an endpoint")) }) }) Context("when the API is set", func() { BeforeEach(func() { fakeConfig.TargetReturns("some-api-target") fakeConfig.APIVersionReturns("some-version") fakeConfig.TargetedOrganizationReturns(configv3.Organization{ Name: "some-org", }) fakeConfig.TargetedSpaceReturns(configv3.Space{ Name: "some-space", }) fakeConfig.CurrentUserReturns(configv3.User{ Name: "admin", }, nil) }) It("outputs the standard target information", func() { Expect(err).ToNot(HaveOccurred()) Expect(fakeUI.Out).To(Say("API endpoint:\\s+some-api-target")) Expect(fakeUI.Out).To(Say("API version:\\s+some-version")) Expect(fakeUI.Out).To(Say("User:\\s+admin")) Expect(fakeUI.Out).To(Say("Org:\\s+some-org"))