51 lines
1.3 KiB
Go
51 lines
1.3 KiB
Go
package middleware
|
|
|
|
import (
|
|
"fmt"
|
|
"testing"
|
|
)
|
|
|
|
var err error
|
|
var secret string = "1234567890"
|
|
var token string = "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6InpoYW5nc2FuIiwiaWF0IjoxNjIyNjQwMDAwfQ"
|
|
var signature string
|
|
var jwt string = "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6InpoYW5nc2FuIiwiaWF0IjoxNjIyNjQwMDAwfQ.Trk6LMpzsyvNLaqWn2FEXEpB5PRyQjo600NoU6LARMo"
|
|
|
|
func TestBase64Encode(t *testing.T) {
|
|
result := base64Encode([]byte("test"))
|
|
expected := "dGVzdA"
|
|
if result != expected {
|
|
t.Errorf("Expected %s, but got %s", expected, result)
|
|
}
|
|
}
|
|
|
|
func TestCreateToken(t *testing.T) {
|
|
token, err = createToken("12345678920", "zhangsan", 1622640000)
|
|
println(token)
|
|
if err != nil {
|
|
t.Errorf("Expected nil, but got error %s", err)
|
|
}
|
|
if token == "" {
|
|
t.Errorf("Expected token, but got empty string")
|
|
}
|
|
}
|
|
|
|
func TestSignToken(t *testing.T) {
|
|
signature, err = signToken(token, secret)
|
|
jwt = fmt.Sprintf("%s.%s", token, signature)
|
|
println(jwt)
|
|
if err != nil {
|
|
t.Errorf("Expected nil, but got error %s", err)
|
|
}
|
|
if signature == "" {
|
|
t.Errorf("Expected signature, but got empty string")
|
|
}
|
|
}
|
|
|
|
func TestVerifyToken(t *testing.T) {
|
|
isValid := verifyToken(jwt, secret)
|
|
if !isValid {
|
|
t.Errorf("Expected true, but got false")
|
|
}
|
|
}
|