Files
go-gin-api/pkg/token/token_test.go
T
2021-03-06 13:28:38 +08:00

55 lines
1.2 KiB
Go

package token
import (
"net/url"
"testing"
"time"
)
const secret = "i1ydX9RtHyuJTrw7frcu"
func TestJwtSign(t *testing.T) {
tokenString, err := New(secret).JwtSign(123456789, "xinliangnote", 24*time.Hour)
if err != nil {
t.Error("sign error", err)
return
}
t.Log(tokenString)
}
func TestJwtParse(t *testing.T) {
tokenString := "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1aWQiOjEyMzQ1Njc4OSwidXNlcm5hbWUiOiJ4aW5saWFuZyIsImV4cCI6MTYwOTQ2NzcwNCwiaWF0IjoxNjA5MzgxMzA0LCJpc3MiOiJnby1naW4tYXBpIiwibmJmIjoxNjA5MzgxMzA0fQ.hccv8F713WpKcwiSldBrFLZz_2SZzOTPedPi-8ps7M4"
user, err := New(secret).JwtParse(tokenString)
if err != nil {
t.Error("parse error", err)
return
}
t.Log(user)
}
func TestUrlSign(t *testing.T) {
urlPath := "/echo"
method := "post"
params := url.Values{}
params.Add("a", "a1")
params.Add("d", "d1")
params.Add("c", "c1")
tokenString, err := New(secret).UrlSign(urlPath, method, params)
if err != nil {
t.Error("sign error", err)
return
}
t.Log(tokenString)
}
func BenchmarkJwtSignAndParse(b *testing.B) {
b.ResetTimer()
token := New(secret)
for i := 0; i < b.N; i++ {
tokenString, _ := token.JwtSign(123456789, "xinliangnote", 24*time.Hour)
token.JwtParse(tokenString)
}
}