github.com/hellofresh/janus@v0.0.0-20230925145208-ce8de8183c67/pkg/jwt/token_test.go (about) 1 package jwt 2 3 import ( 4 "testing" 5 "time" 6 7 "github.com/dgrijalva/jwt-go" 8 "github.com/stretchr/testify/assert" 9 "github.com/stretchr/testify/require" 10 ) 11 12 func TestIssueAdminToken(t *testing.T) { 13 alg := "HS256" 14 key := time.Now().Format(time.RFC3339Nano) 15 claimsID := time.Now().Format(time.RFC3339Nano) 16 17 accessToken, err := IssueAdminToken(SigningMethod{alg, key}, jwt.MapClaims{"id": claimsID}, time.Hour) 18 require.NoError(t, err) 19 20 config := NewParserConfig(0, SigningMethod{Alg: alg, Key: key}) 21 parser := NewParser(config) 22 23 token, err := parser.Parse(accessToken.Token) 24 require.NoError(t, err) 25 26 claims, ok := parser.GetMapClaims(token) 27 assert.True(t, ok) 28 assert.Equal(t, claimsID, claims["id"]) 29 }