go-jwt/token_authorization_info_test.go

43 lines
1.4 KiB
Go
Raw Permalink Normal View History

2025-02-14 19:46:57 +03:00
package jwt
import (
"github.com/stretchr/testify/assert"
"net"
"testing"
)
func TestTAI(t *testing.T) {
ip := net.ParseIP("192.186.4.33")
userAgent := "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36"
deviceId := "6a22eeeb-966c-47fa-bff8-f83dc7929d84"
cookieData := "asdfasd"
tai := TokenAuthorizationInfo{
Ip: ip,
UserAgent: userAgent,
DeviceId: deviceId,
CookieData: cookieData,
}
actual, err := tai.WithSecret("1234567890123456789012345678901234567890").Encode()
assert.Equal(t, nil, err)
assert.Equal(t,
"BbFhu340tDQl9y8siWFlc7s1TpjaHpWWG9tlOGXGOLheBj+cOiF4HKUaBFou10WX8y/feoz6tz/9IPgiUTwbEuXetGIO1KdoygmYiRhxlBYqv0sRa55EjNnPS1DrM7KHOu4fyV57+dvfc4dR669lnuTwhQFE6Q51pq5FtLTnm02HisPGVl1G3JukKAjPRNWCwdZhOylGPuQCav1Egihcz2ZZ3RRDOwUu3SsKEZJJig56XAd1J5MMHzovEgg6B4J4",
actual,
)
tai2, err2 := DecodeTokenAuthorizationInfo(
"BbFhu340tDQl9y8siWFlc7s1TpjaHpWWG9tlOGXGOLheBj+cOiF4HKUaBFou10WX8y/feoz6tz/9IPgiUTwbEuXetGIO1KdoygmYiRhxlBYqv0sRa55EjNnPS1DrM7KHOu4fyV57+dvfc4dR669lnuTwhQFE6Q51pq5FtLTnm02HisPGVl1G3JukKAjPRNWCwdZhOylGPuQCav1Egihcz2ZZ3RRDOwUu3SsKEZJJig56XAd1J5MMHzovEgg6B4J4",
"1234567890123456789012345678901234567890",
)
assert.Equal(t, nil, err2)
assert.Equal(t, ip, tai2.Ip)
assert.Equal(t, userAgent, tai2.UserAgent)
assert.Equal(t, deviceId, tai2.DeviceId)
assert.Equal(t, cookieData, tai2.CookieData)
assert.Equal(t, true, tai.Equal(*tai2))
}