9 "github.com/bytom/vapor/accesstoken"
10 dbm "github.com/bytom/vapor/database/leveldb"
11 "github.com/bytom/vapor/errors"
14 func TestAuthenticate(t *testing.T) {
15 tokenDB := dbm.NewDB("testdb", "leveldb", "temp")
16 defer os.RemoveAll("temp")
17 tokenStore := accesstoken.NewStore(tokenDB)
18 token, err := tokenStore.Create("alice", "test")
20 t.Errorf("create token error")
27 {"alice", token.Token, nil},
28 {"alice", "alice:abcsdsdfassdfsefsfsfesfesfefsefa", ErrInvalidToken},
31 api := NewAPI(tokenStore, false)
33 for _, c := range cases {
34 var username, password string
35 toks := strings.SplitN(c.tok, ":", 2)
43 req, _ := http.NewRequest("GET", "/", nil)
44 req.SetBasicAuth(username, password)
46 _, err := api.Authenticate(req)
47 if errors.Root(err) != c.want {
48 t.Errorf("Authenticate(%s) error = %s want %s", c.id, err, c.want)