}) 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)) }) }) })
args := []string{"MY-TOKEN-LABLE", "my-provider", "my-token-abc123"} requirementsFactory.LoginSuccess = true callUpdateServiceAuthToken(args, requirementsFactory, authTokenRepo) Expect(testcmd.CommandDidPassRequirements).To(BeTrue()) requirementsFactory.LoginSuccess = false callUpdateServiceAuthToken(args, requirementsFactory, authTokenRepo) Expect(testcmd.CommandDidPassRequirements).To(BeFalse()) }) It("TestUpdateServiceAuthToken", func() { foundAuthToken := models.ServiceAuthTokenFields{} foundAuthToken.Guid = "found-auth-token-guid" foundAuthToken.Label = "found label" foundAuthToken.Provider = "found provider" authTokenRepo := &testapi.FakeAuthTokenRepo{FindByLabelAndProviderServiceAuthTokenFields: foundAuthToken} requirementsFactory := &testreq.FakeReqFactory{LoginSuccess: true} args := []string{"a label", "a provider", "a value"} ui := callUpdateServiceAuthToken(args, requirementsFactory, authTokenRepo) 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"},
requirementsFactory.LoginSuccess = false callListServiceAuthTokens(requirementsFactory, authTokenRepo) Expect(testcmd.CommandDidPassRequirements).To(BeFalse()) requirementsFactory.LoginSuccess = true callListServiceAuthTokens(requirementsFactory, authTokenRepo) Expect(testcmd.CommandDidPassRequirements).To(BeTrue()) }) It("TestListServiceAuthTokens", func() { requirementsFactory := &testreq.FakeReqFactory{LoginSuccess: true} authTokenRepo := &testapi.FakeAuthTokenRepo{} authToken := models.ServiceAuthTokenFields{} authToken.Label = "a label" authToken.Provider = "a provider" authToken2 := models.ServiceAuthTokenFields{} authToken2.Label = "a second label" authToken2.Provider = "a second provider" authTokenRepo.FindAllAuthTokens = []models.ServiceAuthTokenFields{authToken, authToken2} ui := callListServiceAuthTokens(requirementsFactory, authTokenRepo) Expect(ui.Outputs).To(ContainSubstrings( []string{"Getting service auth tokens as", "my-user"}, []string{"OK"}, []string{"label", "provider"}, []string{"a label", "a provider"}, []string{"a second label", "a second provider"}, )) }) })