PPPAIMT-Crest/backend/test/tokens.test.js

16 lines
544 B
JavaScript

import { describe, expect, it } from 'vitest';
import { generateToken, hashToken, verifyToken } from '../src/services/tokens.js';
describe('tokens', () => {
it('hashes a random token and rejects a different one', () => {
const token = generateToken();
const hash = hashToken(token);
expect(token).toMatch(/^[A-Za-z0-9_-]+$/);
expect(hash).toHaveLength(64);
expect(verifyToken(token, hash)).toBe(true);
expect(verifyToken(`${token}x`, hash)).toBe(false);
expect(verifyToken(token, 'abcd')).toBe(false);
});
});