func TestUpdateServiceAuthToken(t *testing.T) { foundAuthToken := cf.ServiceAuthTokenFields{} foundAuthToken.Guid = "found-auth-token-guid" foundAuthToken.Label = "found label" foundAuthToken.Provider = "found provider" authTokenRepo := &testapi.FakeAuthTokenRepo{FindByLabelAndProviderServiceAuthTokenFields: foundAuthToken} reqFactory := &testreq.FakeReqFactory{LoginSuccess: true} args := []string{"a label", "a provider", "a value"} ui := callUpdateServiceAuthToken(t, args, reqFactory, authTokenRepo) expectedAuthToken := cf.ServiceAuthTokenFields{} expectedAuthToken.Guid = "found-auth-token-guid" expectedAuthToken.Label = "found label" expectedAuthToken.Provider = "found provider" expectedAuthToken.Token = "a value" testassert.SliceContains(t, ui.Outputs, testassert.Lines{ {"Updating service auth token as", "my-user"}, {"OK"}, }) assert.Equal(t, authTokenRepo.FindByLabelAndProviderLabel, "a label") assert.Equal(t, authTokenRepo.FindByLabelAndProviderProvider, "a provider") assert.Equal(t, authTokenRepo.UpdatedServiceAuthTokenFields, expectedAuthToken) assert.Equal(t, authTokenRepo.UpdatedServiceAuthTokenFields, expectedAuthToken) }
func TestCreateServiceAuthToken(t *testing.T) { authTokenRepo := &testapi.FakeAuthTokenRepo{} reqFactory := &testreq.FakeReqFactory{LoginSuccess: true} args := []string{"a label", "a provider", "a value"} ui := callCreateServiceAuthToken(t, args, reqFactory, authTokenRepo) testassert.SliceContains(t, ui.Outputs, testassert.Lines{ {"Creating service auth token as", "my-user"}, {"OK"}, }) authToken := cf.ServiceAuthTokenFields{} authToken.Label = "a label" authToken.Provider = "a provider" authToken.Token = "a value" assert.Equal(t, authTokenRepo.CreatedServiceAuthTokenFields, authToken) }
func TestServiceAuthUpdate(t *testing.T) { req := testapi.NewCloudControllerTestRequest(testnet.TestRequest{ Method: "PUT", Path: "/v2/service_auth_tokens/mysql-core-guid", Matcher: testnet.RequestBodyMatcher(`{"token":"a value"}`), Response: testnet.TestResponse{Status: http.StatusOK}, }) ts, handler, repo := createServiceAuthTokenRepo(t, req) defer ts.Close() authToken3 := cf.ServiceAuthTokenFields{} authToken3.Guid = "mysql-core-guid" authToken3.Token = "a value" apiResponse := repo.Update(authToken3) assert.True(t, handler.AllRequestsCalled()) assert.True(t, apiResponse.IsSuccessful()) }
func TestServiceAuthCreate(t *testing.T) { req := testapi.NewCloudControllerTestRequest(testnet.TestRequest{ Method: "POST", Path: "/v2/service_auth_tokens", Matcher: testnet.RequestBodyMatcher(`{"label":"a label","provider":"a provider","token":"a token"}`), Response: testnet.TestResponse{Status: http.StatusCreated}, }) ts, handler, repo := createServiceAuthTokenRepo(t, req) defer ts.Close() authToken := cf.ServiceAuthTokenFields{} authToken.Label = "a label" authToken.Provider = "a provider" authToken.Token = "a token" apiResponse := repo.Create(authToken) assert.True(t, handler.AllRequestsCalled()) assert.True(t, apiResponse.IsSuccessful()) }