mirror of
https://github.com/Abdulazizzn/n8n-enterprise-unlocked.git
synced 2025-12-17 10:02:05 +00:00
feat(core): Use WebCrypto to generate all random numbers and strings (#9786)
This commit is contained in:
committed by
GitHub
parent
cfc4db00e3
commit
65c5609ab5
@@ -1,14 +1,18 @@
|
||||
import { v5 as uuidv5, v3 as uuidv3, v4 as uuidv4, v1 as uuidv1 } from 'uuid';
|
||||
import { mock } from 'jest-mock-extended';
|
||||
|
||||
import {
|
||||
ANONYMIZATION_CHARACTER as CHAR,
|
||||
generateNodesGraph,
|
||||
getDomainBase,
|
||||
getDomainPath,
|
||||
} from '@/TelemetryHelpers';
|
||||
import { ApplicationError, STICKY_NODE_TYPE, type IWorkflowBase } from '@/index';
|
||||
import { nodeTypes } from './ExpressionExtensions/Helpers';
|
||||
import { mock } from 'jest-mock-extended';
|
||||
import * as nodeHelpers from '@/NodeHelpers';
|
||||
import type { IWorkflowBase } from '@/Interfaces';
|
||||
import { STICKY_NODE_TYPE } from '@/Constants';
|
||||
import { ApplicationError } from '@/errors';
|
||||
import { randomInt } from '@/utils';
|
||||
|
||||
describe('getDomainBase should return protocol plus domain', () => {
|
||||
test('in valid URLs', () => {
|
||||
@@ -872,22 +876,12 @@ function uuidUrls(
|
||||
];
|
||||
}
|
||||
|
||||
function digit() {
|
||||
return Math.floor(Math.random() * 10);
|
||||
}
|
||||
|
||||
function positiveDigit(): number {
|
||||
const d = digit();
|
||||
|
||||
return d === 0 ? positiveDigit() : d;
|
||||
}
|
||||
|
||||
function numericId(length = positiveDigit()) {
|
||||
return Array.from({ length }, digit).join('');
|
||||
function numericId(length = randomInt(1, 10)) {
|
||||
return Array.from({ length }, () => randomInt(10)).join('');
|
||||
}
|
||||
|
||||
function alphanumericId() {
|
||||
return chooseRandomly([`john${numericId()}`, `title${numericId(1)}`, numericId()]);
|
||||
}
|
||||
|
||||
const chooseRandomly = <T>(array: T[]) => array[Math.floor(Math.random() * array.length)];
|
||||
const chooseRandomly = <T>(array: T[]) => array[randomInt(array.length)];
|
||||
|
||||
Reference in New Issue
Block a user