Back to

Package authtest

Latest Go to latest

The latest major version is .

Published: Aug 13, 2020 | License: Apache-2.0 | Module:


Package authtest implements authentication related test helpers.



const (
	DefaultFakeEmail    = ""
	DefaultFakeLifetime = 5 * time.Minute

Defaults for FakeTokenGenerator.

type FakeTokenGenerator

type FakeTokenGenerator struct {
	Email      string        // email of the default account (default "")
	Prefix     string        // prefix of fake generated tokens (default "fake_token_")
	Lifetime   time.Duration // lifetime of the returned token (default 5 min)
	KeepRecord bool          // if true, record all generated tokens
	// contains filtered or unexported fields

FakeTokenGenerator implements localauth.TokenGenerator by returning fake data.

Useful for integration tests that involve local auth server.

Each GenerateToken call returns a token "<prefix><N>", where "<prefix>" is by default "fake_token_" (it can be changed via Prefix) and N starts from 0 and incremented for each call.

If KeepRecord is true, each generated token is recorded along with a list of scopes that were used to generate it. Use TokenScopes() to see what scopes have been used to generate a particular token.

func (*FakeTokenGenerator) GenerateToken

func (f *FakeTokenGenerator) GenerateToken(ctx context.Context, scopes []string, lifetime time.Duration) (*oauth2.Token, error)

GenerateToken is part of TokenGenerator interface.

func (*FakeTokenGenerator) GetEmail

func (f *FakeTokenGenerator) GetEmail() (string, error)

GetEmail is part of TokenGenerator interface.

func (*FakeTokenGenerator) TokenScopes

func (f *FakeTokenGenerator) TokenScopes(token string) []string

TokenScopes returns scopes that were used to generate given fake token.

Returns nil for unknown tokens or if KeepRecord is false and tokens weren't recorded.

Package Files

Documentation was rendered with GOOS=linux and GOARCH=amd64.

Jump to identifier

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to identifier