added blacklist storage interface
This commit is contained in:
parent
339d6de8bd
commit
4c14116a41
3 changed files with 92 additions and 23 deletions
38
jwt_test.go
38
jwt_test.go
|
|
@ -9,7 +9,7 @@ import (
|
|||
)
|
||||
|
||||
func TestValidate(t *testing.T) {
|
||||
jwt := New(time.Second, true)
|
||||
jwt := New(time.Second, NewMapBlacklist())
|
||||
token := NewToken(map[string]interface{}{
|
||||
"sub": "1234567890",
|
||||
"name": "John Doe",
|
||||
|
|
@ -55,3 +55,39 @@ func TestValidate(t *testing.T) {
|
|||
t.Error(err)
|
||||
}
|
||||
}
|
||||
|
||||
func TestNoBlacklist(t *testing.T) {
|
||||
jwt := New(time.Second, nil)
|
||||
token := NewToken(map[string]interface{}{
|
||||
"sub": "1234567890",
|
||||
"name": "John Doe",
|
||||
"admin": true,
|
||||
"fizz": "buzz",
|
||||
}, nil)
|
||||
err := jwt.Sign(token)
|
||||
if err != nil {
|
||||
t.Error(err)
|
||||
}
|
||||
_, err = DecodeToken("")
|
||||
if err == nil {
|
||||
t.Error(errors.New("token is empty"))
|
||||
}
|
||||
nt, err := DecodeToken(token.String())
|
||||
if err != nil {
|
||||
t.Error(err)
|
||||
}
|
||||
err = jwt.Verify(nt)
|
||||
if err != nil {
|
||||
t.Error(err)
|
||||
}
|
||||
time.Sleep(time.Second * 2)
|
||||
err = jwt.Verify(nt)
|
||||
if err == nil {
|
||||
t.Error(errors.New("token should be expired"))
|
||||
}
|
||||
|
||||
err = jwt.Invalidate(nt)
|
||||
if err == nil {
|
||||
t.Error(errors.New("blacklisting should be disabled"))
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue