mirror of
https://github.com/kikootwo/ReadMeABook.git
synced 2026-06-02 20:30:10 +00:00
refactor(auth): reuse tokenHash from generateApiToken
This commit is contained in:
@@ -8,7 +8,6 @@ import { requireAuth, requireAdmin, AuthenticatedRequest } from '@/lib/middlewar
|
||||
import { prisma } from '@/lib/db';
|
||||
import { RMABLogger } from '@/lib/utils/logger';
|
||||
import { generateApiToken } from '@/lib/utils/api-token';
|
||||
import crypto from 'crypto';
|
||||
|
||||
const logger = RMABLogger.create('API.Admin.Users.LoginToken');
|
||||
|
||||
@@ -37,8 +36,7 @@ export async function POST(
|
||||
);
|
||||
}
|
||||
|
||||
const { fullToken } = generateApiToken();
|
||||
const tokenHash = crypto.createHash('sha256').update(fullToken).digest('hex');
|
||||
const { fullToken, tokenHash } = generateApiToken();
|
||||
|
||||
await prisma.user.update({
|
||||
where: { id },
|
||||
|
||||
@@ -32,7 +32,7 @@ describe('Admin login token routes', () => {
|
||||
authRequest = { user: { id: 'admin-1', username: 'admin', role: 'admin' }, json: vi.fn() };
|
||||
requireAuthMock.mockImplementation((_req: any, handler: any) => handler(authRequest));
|
||||
requireAdminMock.mockImplementation((_req: any, handler: any) => handler());
|
||||
generateApiTokenMock.mockReturnValue({ fullToken: 'rmab_test_token' });
|
||||
generateApiTokenMock.mockReturnValue({ fullToken: 'rmab_test_token', tokenHash: 'hash_abc123' });
|
||||
});
|
||||
|
||||
describe('POST /api/admin/users/[id]/login-token', () => {
|
||||
|
||||
Reference in New Issue
Block a user