Files
dbis_core-lite/tests/unit/password-policy.test.ts
2026-02-09 21:51:45 -08:00

28 lines
975 B
TypeScript

import { PasswordPolicy } from '../../src/gateway/auth/password-policy';
describe('PasswordPolicy', () => {
it('should accept valid password', () => {
const result = PasswordPolicy.validate('ValidPass123!');
expect(result.valid).toBe(true);
expect(result.errors).toHaveLength(0);
});
it('should reject short password', () => {
const result = PasswordPolicy.validate('Short1!');
expect(result.valid).toBe(false);
expect(result.errors.length).toBeGreaterThan(0);
});
it('should reject password without uppercase', () => {
const result = PasswordPolicy.validate('validpass123!');
expect(result.valid).toBe(false);
expect(result.errors.some((e) => e.includes('uppercase'))).toBe(true);
});
it('should reject password without numbers', () => {
const result = PasswordPolicy.validate('ValidPassword!');
expect(result.valid).toBe(false);
expect(result.errors.some((e) => e.includes('number'))).toBe(true);
});
});