9 "github.com/vapor/accesstoken"
10 dbm "github.com/vapor/database/db"
11 _ "github.com/vapor/database/leveldb"
12 "github.com/vapor/database/orm"
13 _ "github.com/vapor/database/sqlite"
14 "github.com/vapor/errors"
17 func TestAuthenticate(t *testing.T) {
18 tokenDB := dbm.NewSqlDB("sql", "sqlitedb", "temp")
24 tokenDB.Db().AutoMigrate(&orm.AccessToken{})
25 tokenStore := accesstoken.NewStore(tokenDB)
26 token, err := tokenStore.Create("alice", "test")
28 t.Errorf("create token error")
35 {"alice", token.Token, nil},
36 {"alice", "alice:abcsdsdfassdfsefsfsfesfesfefsefa", ErrInvalidToken},
39 api := NewAPI(tokenStore, false)
41 for _, c := range cases {
42 var username, password string
43 toks := strings.SplitN(c.tok, ":", 2)
51 req, _ := http.NewRequest("GET", "/", nil)
52 req.SetBasicAuth(username, password)
54 _, err := api.Authenticate(req)
55 if errors.Root(err) != c.want {
56 t.Errorf("Authenticate(%s) error = %s want %s", c.id, err, c.want)