fix: JTI revocation returns error, LogoutHandler returns 500 on failure
This commit is contained in:
@@ -165,7 +165,9 @@ func TestVerifyToken_RevokedJTI(t *testing.T) {
|
||||
t.Fatalf("GenerateToken() failed: %v", err)
|
||||
}
|
||||
|
||||
RevokeJTI(ctx, jti, clock.Now().Add(30*24*time.Hour))
|
||||
if err := RevokeJTI(ctx, jti, clock.Now().Add(30*24*time.Hour)); err != nil {
|
||||
t.Fatalf("RevokeJTI() failed: %v", err)
|
||||
}
|
||||
|
||||
_, _, _, err = VerifyToken(token, ctx)
|
||||
if err == nil {
|
||||
@@ -225,7 +227,9 @@ func TestRevokeJTI_AddsToSet(t *testing.T) {
|
||||
t.Fatal("JTI should not be revoked before calling RevokeJTI")
|
||||
}
|
||||
|
||||
RevokeJTI(ctx, jti, clock.Now().Add(30*24*time.Hour))
|
||||
if err := RevokeJTI(ctx, jti, clock.Now().Add(30*24*time.Hour)); err != nil {
|
||||
t.Fatalf("RevokeJTI() failed: %v", err)
|
||||
}
|
||||
|
||||
if !IsJTIRevoked(ctx, jti) {
|
||||
t.Error("expected IsJTIRevoked to return true after RevokeJTI")
|
||||
@@ -255,7 +259,9 @@ func TestCleanupRevokedJTIs_RemovesExpired(t *testing.T) {
|
||||
}
|
||||
|
||||
// Add with future expiry so IsJTIRevoked sees it
|
||||
RevokeJTI(ctx, jti, clock.Now().Add(1*time.Hour))
|
||||
if err := RevokeJTI(ctx, jti, clock.Now().Add(1*time.Hour)); err != nil {
|
||||
t.Fatalf("RevokeJTI() failed: %v", err)
|
||||
}
|
||||
|
||||
if !IsJTIRevoked(ctx, jti) {
|
||||
t.Fatal("JTI should be in revoked set after RevokeJTI")
|
||||
@@ -285,7 +291,9 @@ func TestCleanupRevokedJTIs_KeepsValid(t *testing.T) {
|
||||
}
|
||||
|
||||
// Add with future expiry
|
||||
RevokeJTI(ctx, jti, clock.Now().Add(30*24*time.Hour))
|
||||
if err := RevokeJTI(ctx, jti, clock.Now().Add(30*24*time.Hour)); err != nil {
|
||||
t.Fatalf("RevokeJTI() failed: %v", err)
|
||||
}
|
||||
|
||||
if !IsJTIRevoked(ctx, jti) {
|
||||
t.Fatal("JTI should be in revoked set before cleanup")
|
||||
@@ -491,8 +499,10 @@ func TestRevokeJTI_NilConn(t *testing.T) {
|
||||
db.Conn = nil
|
||||
t.Cleanup(func() { db.Conn = savedConn })
|
||||
|
||||
// Should not panic when db.Conn is nil
|
||||
RevokeJTI(context.Background(), "test-jti", time.Now())
|
||||
// Should return an error when db.Conn is nil
|
||||
if err := RevokeJTI(context.Background(), "test-jti", time.Now()); err == nil {
|
||||
t.Error("expected error when db.Conn is nil, got nil")
|
||||
}
|
||||
}
|
||||
|
||||
// TestIsJTIRevoked_NilConn verifies that IsJTIRevoked returns false when db.Conn is nil.
|
||||
|
||||
Reference in New Issue
Block a user