modestbench 0.9.1 → 0.9.2
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/CHANGELOG.md +8 -0
- package/dist/cli/builder.cjs +259 -0
- package/dist/cli/builder.cjs.map +1 -0
- package/dist/cli/builder.d.cts +37 -0
- package/dist/cli/builder.d.cts.map +1 -0
- package/dist/cli/builder.d.ts +37 -0
- package/dist/cli/builder.d.ts.map +1 -0
- package/dist/cli/builder.js +255 -0
- package/dist/cli/builder.js.map +1 -0
- package/dist/cli/commands/baseline.cjs +4 -33
- package/dist/cli/commands/baseline.cjs.map +1 -1
- package/dist/cli/commands/baseline.d.cts.map +1 -1
- package/dist/cli/commands/baseline.d.ts.map +1 -1
- package/dist/cli/commands/baseline.js +2 -31
- package/dist/cli/commands/baseline.js.map +1 -1
- package/dist/cli/commands/history.cjs +2 -14
- package/dist/cli/commands/history.cjs.map +1 -1
- package/dist/cli/commands/history.d.cts.map +1 -1
- package/dist/cli/commands/history.d.ts.map +1 -1
- package/dist/cli/commands/history.js +1 -13
- package/dist/cli/commands/history.js.map +1 -1
- package/dist/cli/context.cjs +60 -0
- package/dist/cli/context.cjs.map +1 -0
- package/dist/cli/context.d.cts +28 -0
- package/dist/cli/context.d.cts.map +1 -0
- package/dist/cli/context.d.ts +28 -0
- package/dist/cli/context.d.ts.map +1 -0
- package/dist/cli/context.js +56 -0
- package/dist/cli/context.js.map +1 -0
- package/dist/cli/handlers.cjs +74 -0
- package/dist/cli/handlers.cjs.map +1 -0
- package/dist/cli/handlers.d.cts +13 -0
- package/dist/cli/handlers.d.cts.map +1 -0
- package/dist/cli/handlers.d.ts +13 -0
- package/dist/cli/handlers.d.ts.map +1 -0
- package/dist/cli/handlers.js +70 -0
- package/dist/cli/handlers.js.map +1 -0
- package/dist/cli/index.cjs +12 -724
- package/dist/cli/index.cjs.map +1 -1
- package/dist/cli/index.d.cts +4 -39
- package/dist/cli/index.d.cts.map +1 -1
- package/dist/cli/index.d.ts +4 -39
- package/dist/cli/index.d.ts.map +1 -1
- package/dist/cli/index.js +9 -722
- package/dist/cli/index.js.map +1 -1
- package/dist/cli/parsers/analyze.cjs +54 -0
- package/dist/cli/parsers/analyze.cjs.map +1 -0
- package/dist/cli/parsers/analyze.d.cts +37 -0
- package/dist/cli/parsers/analyze.d.cts.map +1 -0
- package/dist/cli/parsers/analyze.d.ts +37 -0
- package/dist/cli/parsers/analyze.d.ts.map +1 -0
- package/dist/cli/parsers/analyze.js +51 -0
- package/dist/cli/parsers/analyze.js.map +1 -0
- package/dist/cli/parsers/baseline.cjs +75 -0
- package/dist/cli/parsers/baseline.cjs.map +1 -0
- package/dist/cli/parsers/baseline.d.cts +59 -0
- package/dist/cli/parsers/baseline.d.cts.map +1 -0
- package/dist/cli/parsers/baseline.d.ts +59 -0
- package/dist/cli/parsers/baseline.d.ts.map +1 -0
- package/dist/cli/parsers/baseline.js +72 -0
- package/dist/cli/parsers/baseline.js.map +1 -0
- package/dist/cli/parsers/global.cjs +49 -0
- package/dist/cli/parsers/global.cjs.map +1 -0
- package/dist/cli/parsers/global.d.cts +45 -0
- package/dist/cli/parsers/global.d.cts.map +1 -0
- package/dist/cli/parsers/global.d.ts +45 -0
- package/dist/cli/parsers/global.d.ts.map +1 -0
- package/dist/cli/parsers/global.js +46 -0
- package/dist/cli/parsers/global.js.map +1 -0
- package/dist/cli/parsers/history.cjs +138 -0
- package/dist/cli/parsers/history.cjs.map +1 -0
- package/dist/cli/parsers/history.d.cts +108 -0
- package/dist/cli/parsers/history.d.cts.map +1 -0
- package/dist/cli/parsers/history.d.ts +108 -0
- package/dist/cli/parsers/history.d.ts.map +1 -0
- package/dist/cli/parsers/history.js +135 -0
- package/dist/cli/parsers/history.js.map +1 -0
- package/dist/cli/parsers/index.cjs +35 -0
- package/dist/cli/parsers/index.cjs.map +1 -0
- package/dist/cli/parsers/index.d.cts +15 -0
- package/dist/cli/parsers/index.d.cts.map +1 -0
- package/dist/cli/parsers/index.d.ts +15 -0
- package/dist/cli/parsers/index.d.ts.map +1 -0
- package/dist/cli/parsers/index.js +15 -0
- package/dist/cli/parsers/index.js.map +1 -0
- package/dist/cli/parsers/init.cjs +39 -0
- package/dist/cli/parsers/init.cjs.map +1 -0
- package/dist/cli/parsers/init.d.cts +32 -0
- package/dist/cli/parsers/init.d.cts.map +1 -0
- package/dist/cli/parsers/init.d.ts +32 -0
- package/dist/cli/parsers/init.d.ts.map +1 -0
- package/dist/cli/parsers/init.js +36 -0
- package/dist/cli/parsers/init.js.map +1 -0
- package/dist/cli/parsers/run.cjs +99 -0
- package/dist/cli/parsers/run.cjs.map +1 -0
- package/dist/cli/parsers/run.d.cts +62 -0
- package/dist/cli/parsers/run.d.cts.map +1 -0
- package/dist/cli/parsers/run.d.ts +62 -0
- package/dist/cli/parsers/run.d.ts.map +1 -0
- package/dist/cli/parsers/run.js +96 -0
- package/dist/cli/parsers/run.js.map +1 -0
- package/dist/cli/parsers/test.cjs +42 -0
- package/dist/cli/parsers/test.cjs.map +1 -0
- package/dist/cli/parsers/test.d.cts +31 -0
- package/dist/cli/parsers/test.d.cts.map +1 -0
- package/dist/cli/parsers/test.d.ts +31 -0
- package/dist/cli/parsers/test.d.ts.map +1 -0
- package/dist/cli/parsers/test.js +39 -0
- package/dist/cli/parsers/test.js.map +1 -0
- package/dist/cli/theme.cjs +35 -0
- package/dist/cli/theme.cjs.map +1 -0
- package/dist/cli/theme.d.cts +31 -0
- package/dist/cli/theme.d.cts.map +1 -0
- package/dist/cli/theme.d.ts +31 -0
- package/dist/cli/theme.d.ts.map +1 -0
- package/dist/cli/theme.js +32 -0
- package/dist/cli/theme.js.map +1 -0
- package/dist/errors/base.cjs +3 -12
- package/dist/errors/base.cjs.map +1 -1
- package/dist/errors/base.d.cts +0 -7
- package/dist/errors/base.d.cts.map +1 -1
- package/dist/errors/base.d.ts +0 -7
- package/dist/errors/base.d.ts.map +1 -1
- package/dist/errors/base.js +1 -9
- package/dist/errors/base.js.map +1 -1
- package/dist/services/profiler/profile-runner.cjs +11 -0
- package/dist/services/profiler/profile-runner.cjs.map +1 -1
- package/dist/services/profiler/profile-runner.d.cts +2 -0
- package/dist/services/profiler/profile-runner.d.cts.map +1 -1
- package/dist/services/profiler/profile-runner.d.ts +2 -0
- package/dist/services/profiler/profile-runner.d.ts.map +1 -1
- package/dist/services/profiler/profile-runner.js +11 -0
- package/dist/services/profiler/profile-runner.js.map +1 -1
- package/package.json +1 -1
- package/src/cli/builder.ts +387 -0
- package/src/cli/commands/baseline.ts +7 -33
- package/src/cli/commands/history.ts +1 -16
- package/src/cli/context.ts +117 -0
- package/src/cli/handlers.ts +76 -0
- package/src/cli/index.ts +10 -1012
- package/src/cli/parsers/analyze.ts +61 -0
- package/src/cli/parsers/baseline.ts +92 -0
- package/src/cli/parsers/global.ts +51 -0
- package/src/cli/parsers/history.ts +168 -0
- package/src/cli/parsers/index.ts +28 -0
- package/src/cli/parsers/init.ts +45 -0
- package/src/cli/parsers/run.ts +118 -0
- package/src/cli/parsers/test.ts +46 -0
- package/src/cli/theme.ts +33 -0
- package/src/errors/base.ts +1 -10
- package/src/services/profiler/profile-runner.ts +15 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/cli/parsers/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,aAAa,EAAE,sBAAqB;AAC7C,OAAO,EACL,qBAAqB,EACrB,oBAAoB,EACpB,kBAAkB,EAClB,iBAAiB,EACjB,kBAAkB,GACnB,uBAAsB;AACvB,OAAO,EAAE,aAAa,EAAE,WAAW,EAAE,qBAAoB;AACzD,OAAO,EACL,kBAAkB,EAClB,oBAAoB,EACpB,mBAAmB,EACnB,iBAAiB,EACjB,iBAAiB,EACjB,mBAAmB,GACpB,sBAAqB;AACtB,OAAO,EAAE,UAAU,EAAE,mBAAkB;AACvC,OAAO,EAAE,SAAS,EAAE,kBAAiB;AACrC,OAAO,EAAE,UAAU,EAAE,mBAAkB"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* CLI Parsers
|
|
3
|
+
*
|
|
4
|
+
* Re-exports all bargs parser definitions for CLI commands.
|
|
5
|
+
*
|
|
6
|
+
* @packageDocumentation
|
|
7
|
+
*/
|
|
8
|
+
export { analyzeParser } from "./analyze.js";
|
|
9
|
+
export { baselineAnalyzeParser, baselineDeleteParser, baselineListParser, baselineSetParser, baselineShowParser, } from "./baseline.js";
|
|
10
|
+
export { globalOptions, quietOption } from "./global.js";
|
|
11
|
+
export { historyCleanParser, historyCompareParser, historyExportParser, historyListParser, historyShowParser, historyTrendsParser, } from "./history.js";
|
|
12
|
+
export { initParser } from "./init.js";
|
|
13
|
+
export { runParser } from "./run.js";
|
|
14
|
+
export { testParser } from "./test.js";
|
|
15
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/cli/parsers/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,aAAa,EAAE,qBAAqB;AAC7C,OAAO,EACL,qBAAqB,EACrB,oBAAoB,EACpB,kBAAkB,EAClB,iBAAiB,EACjB,kBAAkB,GACnB,sBAAsB;AACvB,OAAO,EAAE,aAAa,EAAE,WAAW,EAAE,oBAAoB;AACzD,OAAO,EACL,kBAAkB,EAClB,oBAAoB,EACpB,mBAAmB,EACnB,iBAAiB,EACjB,iBAAiB,EACjB,mBAAmB,GACpB,qBAAqB;AACtB,OAAO,EAAE,UAAU,EAAE,kBAAkB;AACvC,OAAO,EAAE,SAAS,EAAE,iBAAiB;AACrC,OAAO,EAAE,UAAU,EAAE,kBAAkB"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* CLI Parsers
|
|
3
|
+
*
|
|
4
|
+
* Re-exports all bargs parser definitions for CLI commands.
|
|
5
|
+
*
|
|
6
|
+
* @packageDocumentation
|
|
7
|
+
*/
|
|
8
|
+
export { analyzeParser } from "./analyze.js";
|
|
9
|
+
export { baselineAnalyzeParser, baselineDeleteParser, baselineListParser, baselineSetParser, baselineShowParser, } from "./baseline.js";
|
|
10
|
+
export { globalOptions, quietOption } from "./global.js";
|
|
11
|
+
export { historyCleanParser, historyCompareParser, historyExportParser, historyListParser, historyShowParser, historyTrendsParser, } from "./history.js";
|
|
12
|
+
export { initParser } from "./init.js";
|
|
13
|
+
export { runParser } from "./run.js";
|
|
14
|
+
export { testParser } from "./test.js";
|
|
15
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/cli/parsers/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,aAAa,EAAE,qBAAqB;AAC7C,OAAO,EACL,qBAAqB,EACrB,oBAAoB,EACpB,kBAAkB,EAClB,iBAAiB,EACjB,kBAAkB,GACnB,sBAAsB;AACvB,OAAO,EAAE,aAAa,EAAE,WAAW,EAAE,oBAAoB;AACzD,OAAO,EACL,kBAAkB,EAClB,oBAAoB,EACpB,mBAAmB,EACnB,iBAAiB,EACjB,iBAAiB,EACjB,mBAAmB,GACpB,qBAAqB;AACtB,OAAO,EAAE,UAAU,EAAE,kBAAkB;AACvC,OAAO,EAAE,SAAS,EAAE,iBAAiB;AACrC,OAAO,EAAE,UAAU,EAAE,kBAAkB"}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Init Command Parser
|
|
4
|
+
*
|
|
5
|
+
* Parser for the `init` command which initializes a new benchmark project.
|
|
6
|
+
*
|
|
7
|
+
* @packageDocumentation
|
|
8
|
+
*/
|
|
9
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
10
|
+
exports.initParser = void 0;
|
|
11
|
+
const bargs_1 = require("@boneskull/bargs");
|
|
12
|
+
/**
|
|
13
|
+
* Parser for `init` command
|
|
14
|
+
*
|
|
15
|
+
* Uses camelCaseValues transform for cleaner property access.
|
|
16
|
+
*/
|
|
17
|
+
exports.initParser = (0, bargs_1.map)((0, bargs_1.merge)(bargs_1.opt.options({
|
|
18
|
+
'config-type': bargs_1.opt.enum(['json', 'yaml', 'js', 'ts'], {
|
|
19
|
+
description: 'Configuration file format',
|
|
20
|
+
}),
|
|
21
|
+
examples: bargs_1.opt.boolean({
|
|
22
|
+
description: 'Include example benchmark files',
|
|
23
|
+
}),
|
|
24
|
+
force: bargs_1.opt.boolean({
|
|
25
|
+
description: 'Overwrite existing files',
|
|
26
|
+
}),
|
|
27
|
+
quiet: bargs_1.opt.boolean({
|
|
28
|
+
aliases: ['q'],
|
|
29
|
+
description: 'Minimal output',
|
|
30
|
+
}),
|
|
31
|
+
yes: bargs_1.opt.boolean({
|
|
32
|
+
aliases: ['y'],
|
|
33
|
+
description: 'Accept all prompts automatically',
|
|
34
|
+
}),
|
|
35
|
+
}), bargs_1.pos.positionals(bargs_1.pos.enum(['basic', 'advanced', 'library'], {
|
|
36
|
+
description: 'Type of project to initialize',
|
|
37
|
+
name: 'type',
|
|
38
|
+
}))), bargs_1.camelCaseValues);
|
|
39
|
+
//# sourceMappingURL=init.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"init.js","sourceRoot":"","sources":["../../../src/cli/parsers/init.ts"],"names":[],"mappings":";AAAA;;;;;;GAMG;;;AAEH,4CAAyE;AAEzE;;;;GAIG;AACU,QAAA,UAAU,GAAG,IAAA,WAAG,EAC3B,IAAA,aAAK,EACH,WAAG,CAAC,OAAO,CAAC;IACV,aAAa,EAAE,WAAG,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAU,EAAE;QAC7D,WAAW,EAAE,2BAA2B;KACzC,CAAC;IACF,QAAQ,EAAE,WAAG,CAAC,OAAO,CAAC;QACpB,WAAW,EAAE,iCAAiC;KAC/C,CAAC;IACF,KAAK,EAAE,WAAG,CAAC,OAAO,CAAC;QACjB,WAAW,EAAE,0BAA0B;KACxC,CAAC;IACF,KAAK,EAAE,WAAG,CAAC,OAAO,CAAC;QACjB,OAAO,EAAE,CAAC,GAAG,CAAC;QACd,WAAW,EAAE,gBAAgB;KAC9B,CAAC;IACF,GAAG,EAAE,WAAG,CAAC,OAAO,CAAC;QACf,OAAO,EAAE,CAAC,GAAG,CAAC;QACd,WAAW,EAAE,kCAAkC;KAChD,CAAC;CACH,CAAC,EACF,WAAG,CAAC,WAAW,CACb,WAAG,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,UAAU,EAAE,SAAS,CAAU,EAAE;IAClD,WAAW,EAAE,+BAA+B;IAC5C,IAAI,EAAE,MAAM;CACb,CAAC,CACH,CACF,EACD,uBAAe,CAChB,CAAC"}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Init Command Parser
|
|
3
|
+
*
|
|
4
|
+
* Parser for the `init` command which initializes a new benchmark project.
|
|
5
|
+
*
|
|
6
|
+
* @packageDocumentation
|
|
7
|
+
*/
|
|
8
|
+
/**
|
|
9
|
+
* Parser for `init` command
|
|
10
|
+
*
|
|
11
|
+
* Uses camelCaseValues transform for cleaner property access.
|
|
12
|
+
*/
|
|
13
|
+
export declare const initParser: import("@boneskull/bargs").Parser<import("@boneskull/bargs").CamelCaseKeys<import("@boneskull/bargs").InferOptions<{
|
|
14
|
+
'config-type': import("@boneskull/bargs").EnumOption<"json" | "js" | "ts" | "yaml"> & {
|
|
15
|
+
description: string;
|
|
16
|
+
};
|
|
17
|
+
examples: import("@boneskull/bargs").BooleanOption & {
|
|
18
|
+
description: string;
|
|
19
|
+
};
|
|
20
|
+
force: import("@boneskull/bargs").BooleanOption & {
|
|
21
|
+
description: string;
|
|
22
|
+
};
|
|
23
|
+
quiet: import("@boneskull/bargs").BooleanOption & {
|
|
24
|
+
aliases: string[];
|
|
25
|
+
description: string;
|
|
26
|
+
};
|
|
27
|
+
yes: import("@boneskull/bargs").BooleanOption & {
|
|
28
|
+
aliases: string[];
|
|
29
|
+
description: string;
|
|
30
|
+
};
|
|
31
|
+
}> & object>, readonly ["advanced" | "basic" | "library" | undefined]>;
|
|
32
|
+
//# sourceMappingURL=init.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../../src/cli/parsers/init.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAIH;;;;GAIG;AACH,eAAO,MAAM,UAAU;;;;;;;;;;;;;;;;;;sEA6BtB,CAAC"}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Init Command Parser
|
|
3
|
+
*
|
|
4
|
+
* Parser for the `init` command which initializes a new benchmark project.
|
|
5
|
+
*
|
|
6
|
+
* @packageDocumentation
|
|
7
|
+
*/
|
|
8
|
+
/**
|
|
9
|
+
* Parser for `init` command
|
|
10
|
+
*
|
|
11
|
+
* Uses camelCaseValues transform for cleaner property access.
|
|
12
|
+
*/
|
|
13
|
+
export declare const initParser: import("@boneskull/bargs").Parser<import("@boneskull/bargs").CamelCaseKeys<import("@boneskull/bargs").InferOptions<{
|
|
14
|
+
'config-type': import("@boneskull/bargs").EnumOption<"json" | "js" | "ts" | "yaml"> & {
|
|
15
|
+
description: string;
|
|
16
|
+
};
|
|
17
|
+
examples: import("@boneskull/bargs").BooleanOption & {
|
|
18
|
+
description: string;
|
|
19
|
+
};
|
|
20
|
+
force: import("@boneskull/bargs").BooleanOption & {
|
|
21
|
+
description: string;
|
|
22
|
+
};
|
|
23
|
+
quiet: import("@boneskull/bargs").BooleanOption & {
|
|
24
|
+
aliases: string[];
|
|
25
|
+
description: string;
|
|
26
|
+
};
|
|
27
|
+
yes: import("@boneskull/bargs").BooleanOption & {
|
|
28
|
+
aliases: string[];
|
|
29
|
+
description: string;
|
|
30
|
+
};
|
|
31
|
+
}> & object>, readonly ["advanced" | "basic" | "library" | undefined]>;
|
|
32
|
+
//# sourceMappingURL=init.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../../src/cli/parsers/init.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAIH;;;;GAIG;AACH,eAAO,MAAM,UAAU;;;;;;;;;;;;;;;;;;sEA6BtB,CAAC"}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Init Command Parser
|
|
3
|
+
*
|
|
4
|
+
* Parser for the `init` command which initializes a new benchmark project.
|
|
5
|
+
*
|
|
6
|
+
* @packageDocumentation
|
|
7
|
+
*/
|
|
8
|
+
import { camelCaseValues, map, merge, opt, pos } from '@boneskull/bargs';
|
|
9
|
+
/**
|
|
10
|
+
* Parser for `init` command
|
|
11
|
+
*
|
|
12
|
+
* Uses camelCaseValues transform for cleaner property access.
|
|
13
|
+
*/
|
|
14
|
+
export const initParser = map(merge(opt.options({
|
|
15
|
+
'config-type': opt.enum(['json', 'yaml', 'js', 'ts'], {
|
|
16
|
+
description: 'Configuration file format',
|
|
17
|
+
}),
|
|
18
|
+
examples: opt.boolean({
|
|
19
|
+
description: 'Include example benchmark files',
|
|
20
|
+
}),
|
|
21
|
+
force: opt.boolean({
|
|
22
|
+
description: 'Overwrite existing files',
|
|
23
|
+
}),
|
|
24
|
+
quiet: opt.boolean({
|
|
25
|
+
aliases: ['q'],
|
|
26
|
+
description: 'Minimal output',
|
|
27
|
+
}),
|
|
28
|
+
yes: opt.boolean({
|
|
29
|
+
aliases: ['y'],
|
|
30
|
+
description: 'Accept all prompts automatically',
|
|
31
|
+
}),
|
|
32
|
+
}), pos.positionals(pos.enum(['basic', 'advanced', 'library'], {
|
|
33
|
+
description: 'Type of project to initialize',
|
|
34
|
+
name: 'type',
|
|
35
|
+
}))), camelCaseValues);
|
|
36
|
+
//# sourceMappingURL=init.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"init.js","sourceRoot":"","sources":["../../../src/cli/parsers/init.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,eAAe,EAAE,GAAG,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,MAAM,kBAAkB,CAAC;AAEzE;;;;GAIG;AACH,MAAM,CAAC,MAAM,UAAU,GAAG,GAAG,CAC3B,KAAK,CACH,GAAG,CAAC,OAAO,CAAC;IACV,aAAa,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAU,EAAE;QAC7D,WAAW,EAAE,2BAA2B;KACzC,CAAC;IACF,QAAQ,EAAE,GAAG,CAAC,OAAO,CAAC;QACpB,WAAW,EAAE,iCAAiC;KAC/C,CAAC;IACF,KAAK,EAAE,GAAG,CAAC,OAAO,CAAC;QACjB,WAAW,EAAE,0BAA0B;KACxC,CAAC;IACF,KAAK,EAAE,GAAG,CAAC,OAAO,CAAC;QACjB,OAAO,EAAE,CAAC,GAAG,CAAC;QACd,WAAW,EAAE,gBAAgB;KAC9B,CAAC;IACF,GAAG,EAAE,GAAG,CAAC,OAAO,CAAC;QACf,OAAO,EAAE,CAAC,GAAG,CAAC;QACd,WAAW,EAAE,kCAAkC;KAChD,CAAC;CACH,CAAC,EACF,GAAG,CAAC,WAAW,CACb,GAAG,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,UAAU,EAAE,SAAS,CAAU,EAAE;IAClD,WAAW,EAAE,+BAA+B;IAC5C,IAAI,EAAE,MAAM;CACb,CAAC,CACH,CACF,EACD,eAAe,CAChB,CAAC"}
|
|
@@ -0,0 +1,99 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Run Command Parser
|
|
4
|
+
*
|
|
5
|
+
* Parser for the `run` command which executes benchmark files.
|
|
6
|
+
*
|
|
7
|
+
* @packageDocumentation
|
|
8
|
+
*/
|
|
9
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
10
|
+
exports.runParser = void 0;
|
|
11
|
+
const bargs_1 = require("@boneskull/bargs");
|
|
12
|
+
const constants_js_1 = require("../../constants.cjs");
|
|
13
|
+
/**
|
|
14
|
+
* Base parser for `run` command options and positionals
|
|
15
|
+
*/
|
|
16
|
+
const runParserBase = (0, bargs_1.merge)(bargs_1.opt.options({
|
|
17
|
+
bail: bargs_1.opt.boolean({
|
|
18
|
+
aliases: ['b'],
|
|
19
|
+
description: 'Stop on first failure',
|
|
20
|
+
}),
|
|
21
|
+
engine: bargs_1.opt.enum([constants_js_1.Engines.TINYBENCH, constants_js_1.Engines.ACCURATE], {
|
|
22
|
+
aliases: ['e'],
|
|
23
|
+
description: 'Benchmark engine: tinybench (default) or accurate (requires --allow-natives-syntax)',
|
|
24
|
+
}),
|
|
25
|
+
exclude: bargs_1.opt.array('string', {
|
|
26
|
+
aliases: ['X'],
|
|
27
|
+
description: 'Exclude patterns',
|
|
28
|
+
}),
|
|
29
|
+
'exclude-tag': bargs_1.opt.array('string', {
|
|
30
|
+
aliases: ['T'],
|
|
31
|
+
description: 'Exclude benchmarks with any of these tags',
|
|
32
|
+
}),
|
|
33
|
+
iterations: bargs_1.opt.number({
|
|
34
|
+
aliases: ['i'],
|
|
35
|
+
description: 'Number of iterations per benchmark',
|
|
36
|
+
}),
|
|
37
|
+
'json-pretty': bargs_1.opt.boolean({
|
|
38
|
+
description: 'Pretty-print JSON output (only affects json reporter)',
|
|
39
|
+
}),
|
|
40
|
+
'limit-by': bargs_1.opt.enum(['time', 'iterations', 'any', 'all'], {
|
|
41
|
+
aliases: ['l', 'limit'],
|
|
42
|
+
description: 'How to limit benchmarks: time (time budget), iterations (sample count), any (either threshold), all (both thresholds)',
|
|
43
|
+
}),
|
|
44
|
+
output: bargs_1.opt.string({
|
|
45
|
+
aliases: ['o'],
|
|
46
|
+
description: 'Output directory for reports',
|
|
47
|
+
}),
|
|
48
|
+
'output-file': bargs_1.opt.string({
|
|
49
|
+
aliases: ['of', 'file'],
|
|
50
|
+
description: 'Custom filename for reporter output (use with single reporter only)',
|
|
51
|
+
}),
|
|
52
|
+
quiet: bargs_1.opt.boolean({
|
|
53
|
+
aliases: ['q'],
|
|
54
|
+
description: 'Minimal output',
|
|
55
|
+
}),
|
|
56
|
+
reporter: bargs_1.opt.array([
|
|
57
|
+
constants_js_1.Reporters.HUMAN,
|
|
58
|
+
constants_js_1.Reporters.JSON,
|
|
59
|
+
constants_js_1.Reporters.CSV,
|
|
60
|
+
constants_js_1.Reporters.NYAN,
|
|
61
|
+
constants_js_1.Reporters.SIMPLE,
|
|
62
|
+
], {
|
|
63
|
+
aliases: ['r'],
|
|
64
|
+
default: [constants_js_1.DEFAULT_REPORTER],
|
|
65
|
+
description: 'Output reporters to use (human,json,csv)',
|
|
66
|
+
}),
|
|
67
|
+
tag: bargs_1.opt.array('string', {
|
|
68
|
+
description: 'Include only benchmarks with any of these tags',
|
|
69
|
+
}),
|
|
70
|
+
time: bargs_1.opt.number({
|
|
71
|
+
aliases: ['t'],
|
|
72
|
+
description: 'Time budget per benchmark in milliseconds',
|
|
73
|
+
}),
|
|
74
|
+
timeout: bargs_1.opt.number({
|
|
75
|
+
description: 'Timeout per benchmark in milliseconds',
|
|
76
|
+
}),
|
|
77
|
+
warmup: bargs_1.opt.number({
|
|
78
|
+
aliases: ['w', 'warm'],
|
|
79
|
+
description: 'Number of warmup iterations',
|
|
80
|
+
}),
|
|
81
|
+
}), bargs_1.pos.positionals(bargs_1.pos.variadic('string', {
|
|
82
|
+
description: 'File paths, directory paths, or glob patterns for benchmark files',
|
|
83
|
+
name: 'pattern',
|
|
84
|
+
})));
|
|
85
|
+
/**
|
|
86
|
+
* Parser for `run` command with validation and camelCase values
|
|
87
|
+
*
|
|
88
|
+
* Validates that --output-file is only used with a single reporter. Uses
|
|
89
|
+
* camelCaseValues transform for cleaner property access.
|
|
90
|
+
*/
|
|
91
|
+
exports.runParser = (0, bargs_1.map)((0, bargs_1.map)(runParserBase, ({ positionals, values }) => {
|
|
92
|
+
if (values.reporter &&
|
|
93
|
+
values.reporter.length > 1 &&
|
|
94
|
+
values['output-file']) {
|
|
95
|
+
throw new Error('--output-file can only be used with a single reporter. Use --output <dir> for multiple reporters.');
|
|
96
|
+
}
|
|
97
|
+
return { positionals, values };
|
|
98
|
+
}), bargs_1.camelCaseValues);
|
|
99
|
+
//# sourceMappingURL=run.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"run.js","sourceRoot":"","sources":["../../../src/cli/parsers/run.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Run Command Parser
|
|
3
|
+
*
|
|
4
|
+
* Parser for the `run` command which executes benchmark files.
|
|
5
|
+
*
|
|
6
|
+
* @packageDocumentation
|
|
7
|
+
*/
|
|
8
|
+
/**
|
|
9
|
+
* Parser for `run` command with validation and camelCase values
|
|
10
|
+
*
|
|
11
|
+
* Validates that --output-file is only used with a single reporter. Uses
|
|
12
|
+
* camelCaseValues transform for cleaner property access.
|
|
13
|
+
*/
|
|
14
|
+
export declare const runParser: import("@boneskull/bargs").Parser<import("@boneskull/bargs").CamelCaseKeys<import("@boneskull/bargs").InferOptions<{
|
|
15
|
+
bail: import("@boneskull/bargs").BooleanOption & {
|
|
16
|
+
aliases: string[];
|
|
17
|
+
description: string;
|
|
18
|
+
};
|
|
19
|
+
engine: import("@boneskull/bargs").EnumOption<"accurate" | "tinybench"> & {
|
|
20
|
+
aliases: string[];
|
|
21
|
+
description: string;
|
|
22
|
+
};
|
|
23
|
+
exclude: import("@boneskull/bargs").ArrayOption;
|
|
24
|
+
'exclude-tag': import("@boneskull/bargs").ArrayOption;
|
|
25
|
+
iterations: import("@boneskull/bargs").NumberOption & {
|
|
26
|
+
aliases: string[];
|
|
27
|
+
description: string;
|
|
28
|
+
};
|
|
29
|
+
'json-pretty': import("@boneskull/bargs").BooleanOption & {
|
|
30
|
+
description: string;
|
|
31
|
+
};
|
|
32
|
+
'limit-by': import("@boneskull/bargs").EnumOption<"any" | "time" | "iterations" | "all"> & {
|
|
33
|
+
aliases: string[];
|
|
34
|
+
description: string;
|
|
35
|
+
};
|
|
36
|
+
output: {
|
|
37
|
+
aliases: string[];
|
|
38
|
+
description: string;
|
|
39
|
+
} & import("@boneskull/bargs").StringOption;
|
|
40
|
+
'output-file': {
|
|
41
|
+
aliases: string[];
|
|
42
|
+
description: string;
|
|
43
|
+
} & import("@boneskull/bargs").StringOption;
|
|
44
|
+
quiet: import("@boneskull/bargs").BooleanOption & {
|
|
45
|
+
aliases: string[];
|
|
46
|
+
description: string;
|
|
47
|
+
};
|
|
48
|
+
reporter: import("@boneskull/bargs").EnumArrayOption<"csv" | "human" | "json" | "nyan" | "simple">;
|
|
49
|
+
tag: import("@boneskull/bargs").ArrayOption;
|
|
50
|
+
time: import("@boneskull/bargs").NumberOption & {
|
|
51
|
+
aliases: string[];
|
|
52
|
+
description: string;
|
|
53
|
+
};
|
|
54
|
+
timeout: import("@boneskull/bargs").NumberOption & {
|
|
55
|
+
description: string;
|
|
56
|
+
};
|
|
57
|
+
warmup: import("@boneskull/bargs").NumberOption & {
|
|
58
|
+
aliases: string[];
|
|
59
|
+
description: string;
|
|
60
|
+
};
|
|
61
|
+
}> & object>, readonly [string[]]>;
|
|
62
|
+
//# sourceMappingURL=run.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"run.d.ts","sourceRoot":"","sources":["../../../src/cli/parsers/run.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AA2FH;;;;;GAKG;AACH,eAAO,MAAM,SAAS;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kCAcrB,CAAC"}
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Run Command Parser
|
|
3
|
+
*
|
|
4
|
+
* Parser for the `run` command which executes benchmark files.
|
|
5
|
+
*
|
|
6
|
+
* @packageDocumentation
|
|
7
|
+
*/
|
|
8
|
+
/**
|
|
9
|
+
* Parser for `run` command with validation and camelCase values
|
|
10
|
+
*
|
|
11
|
+
* Validates that --output-file is only used with a single reporter. Uses
|
|
12
|
+
* camelCaseValues transform for cleaner property access.
|
|
13
|
+
*/
|
|
14
|
+
export declare const runParser: import("@boneskull/bargs").Parser<import("@boneskull/bargs").CamelCaseKeys<import("@boneskull/bargs").InferOptions<{
|
|
15
|
+
bail: import("@boneskull/bargs").BooleanOption & {
|
|
16
|
+
aliases: string[];
|
|
17
|
+
description: string;
|
|
18
|
+
};
|
|
19
|
+
engine: import("@boneskull/bargs").EnumOption<"accurate" | "tinybench"> & {
|
|
20
|
+
aliases: string[];
|
|
21
|
+
description: string;
|
|
22
|
+
};
|
|
23
|
+
exclude: import("@boneskull/bargs").ArrayOption;
|
|
24
|
+
'exclude-tag': import("@boneskull/bargs").ArrayOption;
|
|
25
|
+
iterations: import("@boneskull/bargs").NumberOption & {
|
|
26
|
+
aliases: string[];
|
|
27
|
+
description: string;
|
|
28
|
+
};
|
|
29
|
+
'json-pretty': import("@boneskull/bargs").BooleanOption & {
|
|
30
|
+
description: string;
|
|
31
|
+
};
|
|
32
|
+
'limit-by': import("@boneskull/bargs").EnumOption<"any" | "time" | "iterations" | "all"> & {
|
|
33
|
+
aliases: string[];
|
|
34
|
+
description: string;
|
|
35
|
+
};
|
|
36
|
+
output: {
|
|
37
|
+
aliases: string[];
|
|
38
|
+
description: string;
|
|
39
|
+
} & import("@boneskull/bargs").StringOption;
|
|
40
|
+
'output-file': {
|
|
41
|
+
aliases: string[];
|
|
42
|
+
description: string;
|
|
43
|
+
} & import("@boneskull/bargs").StringOption;
|
|
44
|
+
quiet: import("@boneskull/bargs").BooleanOption & {
|
|
45
|
+
aliases: string[];
|
|
46
|
+
description: string;
|
|
47
|
+
};
|
|
48
|
+
reporter: import("@boneskull/bargs").EnumArrayOption<"csv" | "human" | "json" | "nyan" | "simple">;
|
|
49
|
+
tag: import("@boneskull/bargs").ArrayOption;
|
|
50
|
+
time: import("@boneskull/bargs").NumberOption & {
|
|
51
|
+
aliases: string[];
|
|
52
|
+
description: string;
|
|
53
|
+
};
|
|
54
|
+
timeout: import("@boneskull/bargs").NumberOption & {
|
|
55
|
+
description: string;
|
|
56
|
+
};
|
|
57
|
+
warmup: import("@boneskull/bargs").NumberOption & {
|
|
58
|
+
aliases: string[];
|
|
59
|
+
description: string;
|
|
60
|
+
};
|
|
61
|
+
}> & object>, readonly [string[]]>;
|
|
62
|
+
//# sourceMappingURL=run.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"run.d.ts","sourceRoot":"","sources":["../../../src/cli/parsers/run.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AA2FH;;;;;GAKG;AACH,eAAO,MAAM,SAAS;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kCAcrB,CAAC"}
|
|
@@ -0,0 +1,96 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Run Command Parser
|
|
3
|
+
*
|
|
4
|
+
* Parser for the `run` command which executes benchmark files.
|
|
5
|
+
*
|
|
6
|
+
* @packageDocumentation
|
|
7
|
+
*/
|
|
8
|
+
import { camelCaseValues, map, merge, opt, pos } from '@boneskull/bargs';
|
|
9
|
+
import { DEFAULT_REPORTER, Engines, Reporters } from "../../constants.js";
|
|
10
|
+
/**
|
|
11
|
+
* Base parser for `run` command options and positionals
|
|
12
|
+
*/
|
|
13
|
+
const runParserBase = merge(opt.options({
|
|
14
|
+
bail: opt.boolean({
|
|
15
|
+
aliases: ['b'],
|
|
16
|
+
description: 'Stop on first failure',
|
|
17
|
+
}),
|
|
18
|
+
engine: opt.enum([Engines.TINYBENCH, Engines.ACCURATE], {
|
|
19
|
+
aliases: ['e'],
|
|
20
|
+
description: 'Benchmark engine: tinybench (default) or accurate (requires --allow-natives-syntax)',
|
|
21
|
+
}),
|
|
22
|
+
exclude: opt.array('string', {
|
|
23
|
+
aliases: ['X'],
|
|
24
|
+
description: 'Exclude patterns',
|
|
25
|
+
}),
|
|
26
|
+
'exclude-tag': opt.array('string', {
|
|
27
|
+
aliases: ['T'],
|
|
28
|
+
description: 'Exclude benchmarks with any of these tags',
|
|
29
|
+
}),
|
|
30
|
+
iterations: opt.number({
|
|
31
|
+
aliases: ['i'],
|
|
32
|
+
description: 'Number of iterations per benchmark',
|
|
33
|
+
}),
|
|
34
|
+
'json-pretty': opt.boolean({
|
|
35
|
+
description: 'Pretty-print JSON output (only affects json reporter)',
|
|
36
|
+
}),
|
|
37
|
+
'limit-by': opt.enum(['time', 'iterations', 'any', 'all'], {
|
|
38
|
+
aliases: ['l', 'limit'],
|
|
39
|
+
description: 'How to limit benchmarks: time (time budget), iterations (sample count), any (either threshold), all (both thresholds)',
|
|
40
|
+
}),
|
|
41
|
+
output: opt.string({
|
|
42
|
+
aliases: ['o'],
|
|
43
|
+
description: 'Output directory for reports',
|
|
44
|
+
}),
|
|
45
|
+
'output-file': opt.string({
|
|
46
|
+
aliases: ['of', 'file'],
|
|
47
|
+
description: 'Custom filename for reporter output (use with single reporter only)',
|
|
48
|
+
}),
|
|
49
|
+
quiet: opt.boolean({
|
|
50
|
+
aliases: ['q'],
|
|
51
|
+
description: 'Minimal output',
|
|
52
|
+
}),
|
|
53
|
+
reporter: opt.array([
|
|
54
|
+
Reporters.HUMAN,
|
|
55
|
+
Reporters.JSON,
|
|
56
|
+
Reporters.CSV,
|
|
57
|
+
Reporters.NYAN,
|
|
58
|
+
Reporters.SIMPLE,
|
|
59
|
+
], {
|
|
60
|
+
aliases: ['r'],
|
|
61
|
+
default: [DEFAULT_REPORTER],
|
|
62
|
+
description: 'Output reporters to use (human,json,csv)',
|
|
63
|
+
}),
|
|
64
|
+
tag: opt.array('string', {
|
|
65
|
+
description: 'Include only benchmarks with any of these tags',
|
|
66
|
+
}),
|
|
67
|
+
time: opt.number({
|
|
68
|
+
aliases: ['t'],
|
|
69
|
+
description: 'Time budget per benchmark in milliseconds',
|
|
70
|
+
}),
|
|
71
|
+
timeout: opt.number({
|
|
72
|
+
description: 'Timeout per benchmark in milliseconds',
|
|
73
|
+
}),
|
|
74
|
+
warmup: opt.number({
|
|
75
|
+
aliases: ['w', 'warm'],
|
|
76
|
+
description: 'Number of warmup iterations',
|
|
77
|
+
}),
|
|
78
|
+
}), pos.positionals(pos.variadic('string', {
|
|
79
|
+
description: 'File paths, directory paths, or glob patterns for benchmark files',
|
|
80
|
+
name: 'pattern',
|
|
81
|
+
})));
|
|
82
|
+
/**
|
|
83
|
+
* Parser for `run` command with validation and camelCase values
|
|
84
|
+
*
|
|
85
|
+
* Validates that --output-file is only used with a single reporter. Uses
|
|
86
|
+
* camelCaseValues transform for cleaner property access.
|
|
87
|
+
*/
|
|
88
|
+
export const runParser = map(map(runParserBase, ({ positionals, values }) => {
|
|
89
|
+
if (values.reporter &&
|
|
90
|
+
values.reporter.length > 1 &&
|
|
91
|
+
values['output-file']) {
|
|
92
|
+
throw new Error('--output-file can only be used with a single reporter. Use --output <dir> for multiple reporters.');
|
|
93
|
+
}
|
|
94
|
+
return { positionals, values };
|
|
95
|
+
}), camelCaseValues);
|
|
96
|
+
//# sourceMappingURL=run.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"run.js","sourceRoot":"","sources":["../../../src/cli/parsers/run.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Test Command Parser
|
|
4
|
+
*
|
|
5
|
+
* Parser for the `test` command which runs test files as benchmarks.
|
|
6
|
+
*
|
|
7
|
+
* @packageDocumentation
|
|
8
|
+
*/
|
|
9
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
10
|
+
exports.testParser = void 0;
|
|
11
|
+
const bargs_1 = require("@boneskull/bargs");
|
|
12
|
+
/**
|
|
13
|
+
* Parser for `test` command
|
|
14
|
+
*/
|
|
15
|
+
exports.testParser = (0, bargs_1.merge)(bargs_1.opt.options({
|
|
16
|
+
bail: bargs_1.opt.boolean({
|
|
17
|
+
aliases: ['b'],
|
|
18
|
+
description: 'Stop on first failure',
|
|
19
|
+
}),
|
|
20
|
+
iterations: bargs_1.opt.number({
|
|
21
|
+
aliases: ['i'],
|
|
22
|
+
default: 100,
|
|
23
|
+
description: 'Number of iterations per test',
|
|
24
|
+
}),
|
|
25
|
+
quiet: bargs_1.opt.boolean({
|
|
26
|
+
aliases: ['q'],
|
|
27
|
+
description: 'Minimal output',
|
|
28
|
+
}),
|
|
29
|
+
warmup: bargs_1.opt.number({
|
|
30
|
+
aliases: ['w'],
|
|
31
|
+
default: 5,
|
|
32
|
+
description: 'Number of warmup iterations',
|
|
33
|
+
}),
|
|
34
|
+
}), bargs_1.pos.positionals(bargs_1.pos.enum(['ava', 'jest', 'mocha', 'node-test'], {
|
|
35
|
+
description: 'Test framework to use',
|
|
36
|
+
name: 'framework',
|
|
37
|
+
required: true,
|
|
38
|
+
}), bargs_1.pos.variadic('string', {
|
|
39
|
+
description: 'Test file paths or glob patterns',
|
|
40
|
+
name: 'files',
|
|
41
|
+
})));
|
|
42
|
+
//# sourceMappingURL=test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"test.js","sourceRoot":"","sources":["../../../src/cli/parsers/test.ts"],"names":[],"mappings":";AAAA;;;;;;GAMG;;;AAEH,4CAAmD;AAEnD;;GAEG;AACU,QAAA,UAAU,GAAG,IAAA,aAAK,EAC7B,WAAG,CAAC,OAAO,CAAC;IACV,IAAI,EAAE,WAAG,CAAC,OAAO,CAAC;QAChB,OAAO,EAAE,CAAC,GAAG,CAAC;QACd,WAAW,EAAE,uBAAuB;KACrC,CAAC;IACF,UAAU,EAAE,WAAG,CAAC,MAAM,CAAC;QACrB,OAAO,EAAE,CAAC,GAAG,CAAC;QACd,OAAO,EAAE,GAAG;QACZ,WAAW,EAAE,+BAA+B;KAC7C,CAAC;IACF,KAAK,EAAE,WAAG,CAAC,OAAO,CAAC;QACjB,OAAO,EAAE,CAAC,GAAG,CAAC;QACd,WAAW,EAAE,gBAAgB;KAC9B,CAAC;IACF,MAAM,EAAE,WAAG,CAAC,MAAM,CAAC;QACjB,OAAO,EAAE,CAAC,GAAG,CAAC;QACd,OAAO,EAAE,CAAC;QACV,WAAW,EAAE,6BAA6B;KAC3C,CAAC;CACH,CAAC,EACF,WAAG,CAAC,WAAW,CACb,WAAG,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,WAAW,CAAU,EAAE;IACvD,WAAW,EAAE,uBAAuB;IACpC,IAAI,EAAE,WAAW;IACjB,QAAQ,EAAE,IAAI;CACf,CAAC,EACF,WAAG,CAAC,QAAQ,CAAC,QAAQ,EAAE;IACrB,WAAW,EAAE,kCAAkC;IAC/C,IAAI,EAAE,OAAO;CACd,CAAC,CACH,CACF,CAAC"}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Test Command Parser
|
|
3
|
+
*
|
|
4
|
+
* Parser for the `test` command which runs test files as benchmarks.
|
|
5
|
+
*
|
|
6
|
+
* @packageDocumentation
|
|
7
|
+
*/
|
|
8
|
+
/**
|
|
9
|
+
* Parser for `test` command
|
|
10
|
+
*/
|
|
11
|
+
export declare const testParser: import("@boneskull/bargs").Parser<import("@boneskull/bargs").InferOptions<{
|
|
12
|
+
bail: import("@boneskull/bargs").BooleanOption & {
|
|
13
|
+
aliases: string[];
|
|
14
|
+
description: string;
|
|
15
|
+
};
|
|
16
|
+
iterations: import("@boneskull/bargs").NumberOption & {
|
|
17
|
+
aliases: string[];
|
|
18
|
+
default: number;
|
|
19
|
+
description: string;
|
|
20
|
+
};
|
|
21
|
+
quiet: import("@boneskull/bargs").BooleanOption & {
|
|
22
|
+
aliases: string[];
|
|
23
|
+
description: string;
|
|
24
|
+
};
|
|
25
|
+
warmup: import("@boneskull/bargs").NumberOption & {
|
|
26
|
+
aliases: string[];
|
|
27
|
+
default: number;
|
|
28
|
+
description: string;
|
|
29
|
+
};
|
|
30
|
+
}> & object, readonly ["ava" | "jest" | "mocha" | "node-test", string[]]>;
|
|
31
|
+
//# sourceMappingURL=test.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"test.d.ts","sourceRoot":"","sources":["../../../src/cli/parsers/test.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAIH;;GAEG;AACH,eAAO,MAAM,UAAU;;;;;;;;;;;;;;;;;;;yEAgCtB,CAAC"}
|