}) It("fails when not logged in", func() { runCommand("just", "enough", "args") Expect(testcmd.CommandDidPassRequirements).To(BeFalse()) }) }) Context("when logged in", func() { BeforeEach(func() { requirementsFactory.LoginSuccess = true }) It("creates a service auth token, obviously", func() { runCommand("a label", "a provider", "a value") Expect(ui.Outputs).To(ContainSubstrings( []string{"Creating service auth token as", "my-user"}, []string{"OK"}, )) authToken := models.ServiceAuthTokenFields{} authToken.Label = "a label" authToken.Provider = "a provider" authToken.Token = "a value" Expect(authTokenRepo.CreatedServiceAuthTokenFields).To(Equal(authToken)) }) }) })
BeforeEach(func() { requirementsFactory.LoginSuccess = true foundAuthToken := models.ServiceAuthTokenFields{} foundAuthToken.Guid = "found-auth-token-guid" foundAuthToken.Label = "found label" foundAuthToken.Provider = "found provider" authTokenRepo.FindByLabelAndProviderServiceAuthTokenFields = foundAuthToken }) It("updates the service auth token with the provided args", func() { runCommand("a label", "a provider", "a value") expectedAuthToken := models.ServiceAuthTokenFields{} expectedAuthToken.Guid = "found-auth-token-guid" expectedAuthToken.Label = "found label" expectedAuthToken.Provider = "found provider" expectedAuthToken.Token = "a value" Expect(ui.Outputs).To(ContainSubstrings( []string{"Updating service auth token as", "my-user"}, []string{"OK"}, )) Expect(authTokenRepo.FindByLabelAndProviderLabel).To(Equal("a label")) Expect(authTokenRepo.FindByLabelAndProviderProvider).To(Equal("a provider")) Expect(authTokenRepo.UpdatedServiceAuthTokenFields).To(Equal(expectedAuthToken)) Expect(authTokenRepo.UpdatedServiceAuthTokenFields).To(Equal(expectedAuthToken)) }) }) })