2023-04-18 00:33:30 +02:00
|
|
|
import { generateRndKey } from '../components/admin/config/server/StreamKeys';
|
2023-05-21 06:15:25 +02:00
|
|
|
|
2023-04-18 00:33:30 +02:00
|
|
|
describe('generateRndKey', () => {
|
|
|
|
test('should generate a key that matches the regular expression', () => {
|
|
|
|
const key = generateRndKey();
|
|
|
|
const regex = /^(?=.*?[A-Z])(?=.*?[a-z])(?=.*?[0-9])(?=.*?[!@#$^&*]).{8,192}$/;
|
|
|
|
expect(regex.test(key)).toBe(true);
|
|
|
|
});
|
|
|
|
|
|
|
|
test('returns a string', () => {
|
|
|
|
const result = generateRndKey();
|
|
|
|
expect(typeof result).toBe('string');
|
|
|
|
});
|
|
|
|
|
|
|
|
test('should generate a key of length between 8 and 192 characters', () => {
|
|
|
|
const key = generateRndKey();
|
|
|
|
expect(key.length).toBeGreaterThanOrEqual(8);
|
|
|
|
expect(key.length).toBeLessThanOrEqual(192);
|
|
|
|
});
|
|
|
|
|
|
|
|
test('should generate a unique key on each invocation', () => {
|
|
|
|
const key1 = generateRndKey();
|
|
|
|
const key2 = generateRndKey();
|
|
|
|
expect(key1).not.toBe(key2);
|
|
|
|
});
|
2023-04-18 00:34:29 +02:00
|
|
|
});
|