From ca291c568f483957ce5d59a4848da207ed68b049 Mon Sep 17 00:00:00 2001 From: Andy Zhao Date: Mon, 12 Apr 2021 10:11:51 -0700 Subject: [PATCH] authhandler: Remove example_test.go --- authhandler/example_test.go | 79 ------------------------------------- 1 file changed, 79 deletions(-) delete mode 100644 authhandler/example_test.go diff --git a/authhandler/example_test.go b/authhandler/example_test.go deleted file mode 100644 index a62b4e1..0000000 --- a/authhandler/example_test.go +++ /dev/null @@ -1,79 +0,0 @@ -// Copyright 2021 The Go Authors. All rights reserved. -// Use of this source code is governed by a BSD-style -// license that can be found in the LICENSE file. - -package authhandler_test - -import ( - "context" - "fmt" - "net/http" - "net/http/httptest" - - "golang.org/x/oauth2" - "golang.org/x/oauth2/authhandler" -) - -// CmdAuthorizationHandler returns a command line auth handler that prints -// the auth URL to the console and prompts the user to authorize in the -// browser and paste the auth code back via stdin. -// -// Per the OAuth protocol, a unique "state" string should be specified here. -// The authhandler token source will verify that the "state" is identical in -// the request and response before exchanging the auth code for OAuth token to -// prevent CSRF attacks. -// -// For convenience, this handler returns a pre-configured state instead of -// asking the user to additionally paste the state from the auth response. -// In order for this to work, the state configured here must match the state -// used in authCodeURL. -func CmdAuthorizationHandler(state string) authhandler.AuthorizationHandler { - return func(authCodeURL string) (string, string, error) { - fmt.Printf("Go to the following link in your browser:\n\n %s\n\n", authCodeURL) - fmt.Println("Enter authorization code:") - var code string - fmt.Scanln(&code) - return code, state, nil - } -} - -func Example() { - ts := httptest.NewServer(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) { - r.ParseForm() - w.Header().Set("Content-Type", "application/json") - w.Write([]byte(`{ - "access_token": "90d64460d14870c08c81352a05dedd3465940a7c", - "scope": "pubsub", - "token_type": "bearer", - "expires_in": 3600 - }`)) - })) - defer ts.Close() - - ctx := context.Background() - conf := &oauth2.Config{ - ClientID: "testClientID", - Scopes: []string{"pubsub"}, - Endpoint: oauth2.Endpoint{ - AuthURL: "testAuthCodeURL", - TokenURL: ts.URL, - }, - } - state := "unique_state" - - token, err := authhandler.TokenSource(ctx, conf, state, CmdAuthorizationHandler(state)).Token() - - if err != nil { - fmt.Println(err) - } - - fmt.Printf("AccessToken: %s", token.AccessToken) - - // Output: - // Go to the following link in your browser: - // - // testAuthCodeURL?client_id=testClientID&response_type=code&scope=pubsub&state=unique_state - // - // Enter authorization code: - // AccessToken: 90d64460d14870c08c81352a05dedd3465940a7c -}