Services: []models.ServiceOffering{ {ServiceOfferingFields: models.ServiceOfferingFields{Label: "my-service-3"}}, }, } actor.FilterBrokersReturns([]models.ServiceBroker{ serviceBroker1, serviceBroker2, }, nil, ) }) It("refreshes the auth token", func() { runCommand() Expect(authRepo.RefreshAuthTokenCallCount()).To(Equal(1)) }) Context("when refreshing the auth token fails", func() { It("fails and returns the error", func() { authRepo.RefreshAuthTokenReturns("", errors.New("Refreshing went wrong")) runCommand() Expect(ui.Outputs).To(ContainSubstrings( []string{"Refreshing went wrong"}, []string{"FAILED"}, )) }) }) Context("When no flags are provided", func() {
Context("when a noaa_errors.UnauthorizedError occurs", func() { var recentCalled bool BeforeEach(func() { fakeConsumer.RecentStub = func(string, string) ([]*logmessage.LogMessage, error) { if recentCalled { return nil, nil } recentCalled = true return nil, noaa_errors.NewUnauthorizedError("i'm sorry dave") } }) It("refreshes the access token", func() { _, err := logsRepo.RecentLogsFor("app-guid") Expect(err).ToNot(HaveOccurred()) Expect(authRepo.RefreshAuthTokenCallCount()).To(Equal(1)) }) }) Context("when an error occurs", func() { BeforeEach(func() { fakeConsumer.RecentReturns(nil, errors.New("oops")) }) It("returns the error", func() { _, err := logsRepo.RecentLogsFor("app-guid") Expect(err).To(Equal(errors.New("oops"))) }) }) Context("when an error does not occur", func() {
requirementsFactory.LoginSuccess = true runCommand(nil) Expect(ui.Outputs).To(ContainSubstrings( []string{"Incorrect Usage", "Requires", "argument"}, )) }) }) Describe("when logged in", func() { BeforeEach(func() { requirementsFactory.LoginSuccess = true }) It("Refreshes the auth token", func() { runCommand([]string{"service"}) Expect(tokenRefresher.RefreshAuthTokenCallCount()).To(Equal(1)) }) Context("when refreshing the auth token fails", func() { It("fails and returns the error", func() { tokenRefresher.RefreshAuthTokenReturns("", errors.New("Refreshing went wrong")) runCommand([]string{"service"}) Expect(ui.Outputs).To(ContainSubstrings( []string{"Refreshing went wrong"}, []string{"FAILED"}, )) }) }) Context("when the named service exists", func() {