first commit

This commit is contained in:
Beyhan Oğur
2026-04-26 21:41:46 +03:00
commit b6e74bd024
56 changed files with 16114 additions and 0 deletions

42
pkg/jwt/jwt_test.go Normal file
View File

@@ -0,0 +1,42 @@
package jwt
import (
"testing"
)
func TestGenerateAndValidateAccessToken(t *testing.T) {
t.Setenv("JWT_SECRET", "test-secret-1234567890")
token, err := GenerateAccessToken(42, "user@example.com", "tester")
if err != nil {
t.Fatalf("GenerateAccessToken returned error: %v", err)
}
claims, err := ValidateToken(token, "test-secret-1234567890")
if err != nil {
t.Fatalf("ValidateToken returned error: %v", err)
}
if claims.UserID != 42 {
t.Fatalf("expected user_id=42, got %d", claims.UserID)
}
if claims.Email != "user@example.com" {
t.Fatalf("expected email=user@example.com, got %s", claims.Email)
}
if claims.UserName != "tester" {
t.Fatalf("expected username=tester, got %s", claims.UserName)
}
}
func TestValidateTokenWrongSecretFails(t *testing.T) {
t.Setenv("JWT_SECRET", "test-secret-1234567890")
token, err := GenerateAccessToken(1, "user@example.com", "tester")
if err != nil {
t.Fatalf("GenerateAccessToken returned error: %v", err)
}
if _, err := ValidateToken(token, "wrong-secret"); err == nil {
t.Fatal("expected ValidateToken to fail with wrong secret")
}
}