Example #1
0
func testAccessTokens(c gaecontext.HTTPContext) {
	enc, err := utils.EncodeToken(&Token{Name: "hehu"}, time.Hour)
	if err != nil {
		panic(err)
	}
	c.Req().Header.Set("Authorization", fmt.Sprintf("Bearer %v", enc))
	tok := &Token{}
	if _, err := c.AccessToken(tok); err != nil {
		panic(err)
	}
	if tok.Name != "hehu" {
		panic("wrong name!")
	}
	enc, err = utils.EncodeToken(&Token{Name: "hehu"}, time.Millisecond)
	if err != nil {
		panic(err)
	}
	time.Sleep(time.Millisecond * 5)
	c.Req().Header.Set("Authorization", fmt.Sprintf("Bearer %v", enc))
	if _, err := c.AccessToken(tok); !strings.Contains(err.Error(), "Expired") {
		panic("should be expired")
	}
}