diff options
author | Santo Cariotti <santo@dcariotti.me> | 2025-04-08 14:37:33 +0200 |
---|---|---|
committer | Santo Cariotti <santo@dcariotti.me> | 2025-04-08 14:39:13 +0200 |
commit | 1f0d9ec8452f15c27cd33c4e3874454c35993743 (patch) | |
tree | c453a31ae5eb823aaf48868eea9fc4daf65f108b /api/auth/auth_test.go | |
parent | c5b10e28b358308d8349b940af09f64368172f2e (diff) |
Use internal/pkg structure
Diffstat (limited to 'api/auth/auth_test.go')
-rw-r--r-- | api/auth/auth_test.go | 74 |
1 files changed, 0 insertions, 74 deletions
diff --git a/api/auth/auth_test.go b/api/auth/auth_test.go deleted file mode 100644 index 50b6c9b..0000000 --- a/api/auth/auth_test.go +++ /dev/null @@ -1,74 +0,0 @@ -package auth - -import ( - "os" - "testing" - "time" - - "github.com/golang-jwt/jwt/v5" - "github.com/stretchr/testify/assert" -) - -func TestGenerateAndValidateJWT(t *testing.T) { - // Set up the JWT secret for the test. - os.Setenv("JWT_SECRET", "testsecret") - jwtKey = []byte(os.Getenv("JWT_SECRET")) - - userID := 123 - tokenString, err := GenerateJWT(userID) - assert.NoError(t, err) - assert.NotEmpty(t, tokenString) - - claims, err := ValidateJWT(tokenString) - assert.NoError(t, err) - assert.NotNil(t, claims) - assert.Equal(t, userID, claims.UserID) - assert.True(t, claims.ExpiresAt.After(time.Now())) -} - -func TestValidateJWT_InvalidToken(t *testing.T) { - os.Setenv("JWT_SECRET", "testsecret") - jwtKey = []byte(os.Getenv("JWT_SECRET")) - - _, err := ValidateJWT("invalid_token") - assert.Error(t, err) -} - -func TestValidateJWT_ExpiredToken(t *testing.T) { - os.Setenv("JWT_SECRET", "testsecret") - jwtKey = []byte(os.Getenv("JWT_SECRET")) - - // Create a token that has already expired. - claims := &Claims{ - UserID: 123, - RegisteredClaims: jwt.RegisteredClaims{ - ExpiresAt: jwt.NewNumericDate(time.Now().Add(-1 * time.Hour)), - }, - } - - token := jwt.NewWithClaims(jwt.SigningMethodHS256, claims) - tokenString, err := token.SignedString(jwtKey) - assert.NoError(t, err) - - _, err = ValidateJWT(tokenString) - assert.Error(t, err) -} - -func TestValidateJWT_WrongSecret(t *testing.T) { - os.Setenv("JWT_SECRET", "testsecret") - jwtKey = []byte(os.Getenv("JWT_SECRET")) - - userID := 123 - tokenString, err := GenerateJWT(userID) - assert.NoError(t, err) - - // Set a different secret for validation. - wrongKey := []byte("wrongsecret") - - claims := &Claims{} - _, err = jwt.ParseWithClaims(tokenString, claims, func(token *jwt.Token) (interface{}, error) { - return wrongKey, nil - }) - - assert.Error(t, err) -} |