@flemist/test-variants 1.0.2 → 1.0.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/bundle/browser.js
CHANGED
|
@@ -263,47 +263,47 @@ n?(e||(e=new c,n.subscribe(r)),i.subscribe(r)):n=i
|
|
|
263
263
|
}(j,P.signal),k=S,z=Object.keys(i),E=Object.values(i),A=z.length,O={}
|
|
264
264
|
;function F(t){var e=E[t]
|
|
265
265
|
;return"function"==typeof e&&(e=e(O)),e}
|
|
266
|
-
for(var I=[],R=[],
|
|
267
|
-
;R[0]=F(0);var
|
|
266
|
+
for(var I=[],R=[],M=0;M<A;M++)I[M]=-1,R[M]=[]
|
|
267
|
+
;R[0]=F(0);var C=0,D=0,G=!1,$=0;function q(t,e,s){
|
|
268
268
|
return n(this,void 0,void 0,(function(){var n
|
|
269
269
|
;return r(this,(function(r){switch(r.label){
|
|
270
270
|
case 0:
|
|
271
271
|
return P.abort(t),console.error("error variant: ".concat(e,"\r\n").concat(JSON.stringify(s,null,2))),
|
|
272
272
|
console.error(t),
|
|
273
273
|
n=Date.now(),Date.now()-n>50&&$<5?(console.log("DEBUG ITERATION: "+$),
|
|
274
|
-
G=!0,[4,
|
|
274
|
+
G=!0,[4,V()]):[3,2];case 1:r.sent(),$++,r.label=2
|
|
275
275
|
;case 2:throw g&&g({iteration:e,variant:s,error:t
|
|
276
276
|
}),t}}))}))}
|
|
277
|
-
var N=Date.now(),U=N,W=
|
|
278
|
-
;function
|
|
277
|
+
var N=Date.now(),U=N,W=C,Q=D,B=!0===x?Math.pow(2,31):!x||x<=0?1:x,J=B<=1?null:new T(B)
|
|
278
|
+
;function K(e,s,i){
|
|
279
279
|
return n(this,void 0,void 0,(function(){var n,o,l
|
|
280
280
|
;return r(this,(function(r){switch(r.label){
|
|
281
281
|
case 0:return r.trys.push([0,3,,5]),function(t){
|
|
282
282
|
return"object"==typeof t&&t&&"function"==typeof t.then
|
|
283
283
|
}(n=t(s,i))?[4,n]:[3,2];case 1:
|
|
284
|
-
return o=r.sent(),
|
|
285
|
-
[2];case 2:return
|
|
284
|
+
return o=r.sent(),D+=l="number"==typeof o?o:1,C+=l,
|
|
285
|
+
[2];case 2:return C+="number"==typeof n?n:1,[3,5]
|
|
286
286
|
;case 3:return[4,q(r.sent(),e,s)];case 4:
|
|
287
287
|
return r.sent(),[3,5];case 5:return[2]}}))}))}
|
|
288
|
-
function
|
|
288
|
+
function V(){
|
|
289
289
|
return n(this,void 0,void 0,(function(){
|
|
290
290
|
var t,i=this;return r(this,(function(o){
|
|
291
291
|
switch(o.label){case 0:t=function(){var t,o,l
|
|
292
292
|
;return r(this,(function(c){switch(c.label){
|
|
293
293
|
case 0:
|
|
294
|
-
return t=
|
|
295
|
-
N=l),a&&
|
|
296
|
-
Q=
|
|
294
|
+
return t=C,o=J?e({},O):O,l=(b||_)&&Date.now(),b&&l-N>=b&&(console.log(C),
|
|
295
|
+
N=l),a&&C-W>=a||f&&D-Q>=f||_&&l-U>=_?(W=C,
|
|
296
|
+
Q=D,U=l,[4,s(1)]):[3,2];case 1:
|
|
297
297
|
return c.sent(),[2,"continue"];case 2:
|
|
298
|
-
return(null==j?void 0:j.aborted)?[2,"continue"]:
|
|
298
|
+
return(null==j?void 0:j.aborted)?[2,"continue"]:J&&!S.aborted?[3,4]:[4,K(t,o,j)]
|
|
299
299
|
;case 3:return c.sent(),[3,7];case 4:
|
|
300
|
-
return
|
|
300
|
+
return J.hold(1)?[3,6]:[4,J.holdWait(1)];case 5:
|
|
301
301
|
c.sent(),c.label=6;case 6:
|
|
302
302
|
n(i,void 0,void 0,(function(){
|
|
303
303
|
return r(this,(function(e){switch(e.label){case 0:
|
|
304
|
-
return e.trys.push([0,,2,3]),(null==S?void 0:S.aborted)?[2]:[4,
|
|
304
|
+
return e.trys.push([0,,2,3]),(null==S?void 0:S.aborted)?[2]:[4,K(t,o,S)]
|
|
305
305
|
;case 1:return e.sent(),[3,3];case 2:
|
|
306
|
-
return
|
|
306
|
+
return J.release(1),[7];case 3:return[2]}}))
|
|
307
307
|
})),c.label=7;case 7:return[2]}}))},o.label=1
|
|
308
308
|
;case 1:
|
|
309
309
|
return(null==j?void 0:j.aborted)||!G&&!function(){
|
|
@@ -313,10 +313,10 @@ for(I[t]=e,O[z[t]]=R[t][e],t++;t<A;t++){var n=F(t)
|
|
|
313
313
|
;if(0===n.length)break;I[t]=0,R[t]=n,O[z[t]]=n[0]}
|
|
314
314
|
if(t>=A)return!0}}return!1}()?[3,3]:[5,t()]
|
|
315
315
|
;case 2:return o.sent(),[3,1];case 3:
|
|
316
|
-
return
|
|
317
|
-
o.sent(),
|
|
316
|
+
return J?[4,J.holdWait(B)]:[3,5];case 4:
|
|
317
|
+
o.sent(),J.release(B),o.label=5;case 5:
|
|
318
318
|
if(null==k?void 0:k.aborted)throw k.reason
|
|
319
|
-
;return y&&console.log("variants: "+
|
|
320
|
-
;case 6:return o.sent(),[2,
|
|
319
|
+
;return y&&console.log("variants: "+C),[4,s(1)]
|
|
320
|
+
;case 6:return o.sent(),[2,C]}}))}))}return V()}}
|
|
321
321
|
},Object.defineProperty(t,"__esModule",{value:!0})
|
|
322
322
|
}({});
|
package/dist/lib/index.d.ts
CHANGED
|
@@ -1 +1,2 @@
|
|
|
1
|
-
export {
|
|
1
|
+
export type { VariantsArgs, TestVariantsSetArgs, TestVariantsCall, TestVariantsCallParams } from './test-variants/createTestVariants';
|
|
2
|
+
export { createTestVariants } from './test-variants/createTestVariants';
|
|
@@ -16,7 +16,7 @@ function isPromiseLike(value) {
|
|
|
16
16
|
}
|
|
17
17
|
function createTestVariants(test) {
|
|
18
18
|
return function testVariantsArgs(args) {
|
|
19
|
-
return function testVariantsCall({ GC_Iterations = 1000000, GC_IterationsAsync = 10000, GC_Interval = 1000, logInterval = 5000, logCompleted = true, onError: onErrorCallback = null, abortSignal: abortSignalExternal = null, parallel, } = {}) {
|
|
19
|
+
return function testVariantsCall({ GC_Iterations = 1000000, GC_IterationsAsync = 10000, GC_Interval = 1000, logInterval = 5000, logCompleted = true, onError: onErrorCallback = null, abortSignal: abortSignalExternal = null, parallel: _parallel, } = {}) {
|
|
20
20
|
const abortControllerParallel = new abortControllerFast.AbortControllerFast();
|
|
21
21
|
const abortSignalParallel = asyncUtils.combineAbortSignals(abortSignalExternal, abortControllerParallel.signal);
|
|
22
22
|
const abortSignalAll = abortSignalParallel;
|
|
@@ -98,7 +98,12 @@ function createTestVariants(test) {
|
|
|
98
98
|
let prevGC_Time = prevLogTime;
|
|
99
99
|
let prevGC_Iterations = iterations;
|
|
100
100
|
let prevGC_IterationsAsync = iterationsAsync;
|
|
101
|
-
const
|
|
101
|
+
const parallel = _parallel === true
|
|
102
|
+
? Math.pow(2, 31)
|
|
103
|
+
: !_parallel || _parallel <= 0
|
|
104
|
+
? 1
|
|
105
|
+
: _parallel;
|
|
106
|
+
const pool = parallel <= 1
|
|
102
107
|
? null
|
|
103
108
|
: new timeLimits.Pool(parallel);
|
|
104
109
|
function runTest(_iterations, variantArgs, abortSignal) {
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import { IAbortSignalFast } from '@flemist/abort-controller-fast';
|
|
2
|
-
declare type VariantsArgs<TArgs> = {
|
|
2
|
+
export declare type VariantsArgs<TArgs> = {
|
|
3
3
|
[key in keyof TArgs]: TArgs[key][] | ((args: TArgs) => TArgs[key][]);
|
|
4
4
|
};
|
|
5
5
|
declare type PromiseOrValue<T> = Promise<T> | T;
|
|
6
|
-
declare type TestVariantsCall<TArgs> = (callParams?: TestVariantsCallParams<TArgs>) => PromiseOrValue<number>;
|
|
7
|
-
declare type TestVariantsSetArgs<TArgs> = <TAdditionalArgs>(args: VariantsArgs<{
|
|
6
|
+
export declare type TestVariantsCall<TArgs> = (callParams?: TestVariantsCallParams<TArgs>) => PromiseOrValue<number>;
|
|
7
|
+
export declare type TestVariantsSetArgs<TArgs> = <TAdditionalArgs>(args: VariantsArgs<{
|
|
8
8
|
[key in (keyof TAdditionalArgs | keyof TArgs)]: key extends keyof TArgs ? TArgs[key] : key extends keyof TAdditionalArgs ? TAdditionalArgs[key] : never;
|
|
9
9
|
}>) => TestVariantsCall<TArgs>;
|
|
10
10
|
export declare type TestVariantsCallParams<TArgs> = {
|
|
@@ -24,7 +24,7 @@ export declare type TestVariantsCallParams<TArgs> = {
|
|
|
24
24
|
error: any;
|
|
25
25
|
}) => void;
|
|
26
26
|
abortSignal?: IAbortSignalFast;
|
|
27
|
-
parallel?: number;
|
|
27
|
+
parallel?: null | number | boolean;
|
|
28
28
|
};
|
|
29
29
|
export declare function createTestVariants<TArgs extends object>(test: (args: TArgs, abortSignal: IAbortSignalFast) => Promise<number | void> | number | void): TestVariantsSetArgs<TArgs>;
|
|
30
30
|
export {};
|
|
@@ -12,7 +12,7 @@ function isPromiseLike(value) {
|
|
|
12
12
|
}
|
|
13
13
|
function createTestVariants(test) {
|
|
14
14
|
return function testVariantsArgs(args) {
|
|
15
|
-
return function testVariantsCall({ GC_Iterations = 1000000, GC_IterationsAsync = 10000, GC_Interval = 1000, logInterval = 5000, logCompleted = true, onError: onErrorCallback = null, abortSignal: abortSignalExternal = null, parallel, } = {}) {
|
|
15
|
+
return function testVariantsCall({ GC_Iterations = 1000000, GC_IterationsAsync = 10000, GC_Interval = 1000, logInterval = 5000, logCompleted = true, onError: onErrorCallback = null, abortSignal: abortSignalExternal = null, parallel: _parallel, } = {}) {
|
|
16
16
|
const abortControllerParallel = new AbortControllerFast();
|
|
17
17
|
const abortSignalParallel = combineAbortSignals(abortSignalExternal, abortControllerParallel.signal);
|
|
18
18
|
const abortSignalAll = abortSignalParallel;
|
|
@@ -94,7 +94,12 @@ function createTestVariants(test) {
|
|
|
94
94
|
let prevGC_Time = prevLogTime;
|
|
95
95
|
let prevGC_Iterations = iterations;
|
|
96
96
|
let prevGC_IterationsAsync = iterationsAsync;
|
|
97
|
-
const
|
|
97
|
+
const parallel = _parallel === true
|
|
98
|
+
? Math.pow(2, 31)
|
|
99
|
+
: !_parallel || _parallel <= 0
|
|
100
|
+
? 1
|
|
101
|
+
: _parallel;
|
|
102
|
+
const pool = parallel <= 1
|
|
98
103
|
? null
|
|
99
104
|
: new Pool(parallel);
|
|
100
105
|
function runTest(_iterations, variantArgs, abortSignal) {
|