@memberjunction/testing-cli 3.0.0 → 3.1.1
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/commands/list.d.ts +8 -0
- package/dist/commands/list.d.ts.map +1 -1
- package/dist/commands/list.js +57 -2
- package/dist/commands/list.js.map +1 -1
- package/dist/commands/run.d.ts.map +1 -1
- package/dist/commands/run.js +9 -1
- package/dist/commands/run.js.map +1 -1
- package/dist/commands/suite.d.ts.map +1 -1
- package/dist/commands/suite.js +6 -1
- package/dist/commands/suite.js.map +1 -1
- package/dist/types.d.ts +14 -0
- package/dist/types.d.ts.map +1 -1
- package/dist/utils/variable-parser.d.ts +23 -0
- package/dist/utils/variable-parser.d.ts.map +1 -0
- package/dist/utils/variable-parser.js +43 -0
- package/dist/utils/variable-parser.js.map +1 -0
- package/package.json +7 -6
package/dist/commands/list.d.ts
CHANGED
|
@@ -35,5 +35,13 @@ export declare class ListCommand {
|
|
|
35
35
|
* Format tags for display
|
|
36
36
|
*/
|
|
37
37
|
private formatTags;
|
|
38
|
+
/**
|
|
39
|
+
* Parse variables schema JSON
|
|
40
|
+
*/
|
|
41
|
+
private parseVariablesSchema;
|
|
42
|
+
/**
|
|
43
|
+
* Display a single variable definition
|
|
44
|
+
*/
|
|
45
|
+
private displayVariable;
|
|
38
46
|
}
|
|
39
47
|
//# sourceMappingURL=list.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"list.d.ts","sourceRoot":"","sources":["../../src/commands/list.ts"],"names":[],"mappings":"AAAA;;;GAGG;
|
|
1
|
+
{"version":3,"file":"list.d.ts","sourceRoot":"","sources":["../../src/commands/list.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAEhD,OAAO,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAKrC;;GAEG;AACH,qBAAa,WAAW;IACpB;;;;;OAKG;IACG,OAAO,CAAC,KAAK,EAAE,SAAS,EAAE,WAAW,CAAC,EAAE,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC;IAsCtE;;OAEG;IACH,OAAO,CAAC,aAAa;IA0BrB;;OAEG;IACH,OAAO,CAAC,cAAc;IA0BtB;;OAEG;IACH,OAAO,CAAC,SAAS;IAgFjB;;OAEG;IACH,OAAO,CAAC,oBAAoB;IAW5B;;OAEG;IACH,OAAO,CAAC,UAAU;IAWlB;;OAEG;IACH,OAAO,CAAC,oBAAoB;IAU5B;;OAEG;IACH,OAAO,CAAC,eAAe;CAkB1B"}
|
package/dist/commands/list.js
CHANGED
|
@@ -33,7 +33,7 @@ class ListCommand {
|
|
|
33
33
|
const engine = testing_engine_1.TestEngine.Instance;
|
|
34
34
|
await engine.Config(false, contextUser);
|
|
35
35
|
if (flags.types) {
|
|
36
|
-
this.listTestTypes(engine);
|
|
36
|
+
this.listTestTypes(engine, flags);
|
|
37
37
|
}
|
|
38
38
|
else if (flags.suites) {
|
|
39
39
|
this.listTestSuites(engine, flags);
|
|
@@ -59,7 +59,7 @@ class ListCommand {
|
|
|
59
59
|
/**
|
|
60
60
|
* List test types
|
|
61
61
|
*/
|
|
62
|
-
listTestTypes(engine) {
|
|
62
|
+
listTestTypes(engine, flags) {
|
|
63
63
|
const types = engine.TestTypes;
|
|
64
64
|
console.log(chalk_1.default.bold(`\nTest Types (${types.length}):\n`));
|
|
65
65
|
for (const type of types) {
|
|
@@ -67,6 +67,16 @@ class ListCommand {
|
|
|
67
67
|
if (type.Description) {
|
|
68
68
|
console.log(chalk_1.default.gray(` ${type.Description}`));
|
|
69
69
|
}
|
|
70
|
+
// Show variables if flag is set
|
|
71
|
+
if (flags?.showVariables && type.VariablesSchema) {
|
|
72
|
+
const variables = this.parseVariablesSchema(type.VariablesSchema);
|
|
73
|
+
if (variables.length > 0) {
|
|
74
|
+
console.log(chalk_1.default.yellow(` Variables:`));
|
|
75
|
+
for (const variable of variables) {
|
|
76
|
+
this.displayVariable(variable, 6);
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
}
|
|
70
80
|
}
|
|
71
81
|
console.log('');
|
|
72
82
|
}
|
|
@@ -132,6 +142,7 @@ class ListCommand {
|
|
|
132
142
|
typeMap.get(typeName).push(test);
|
|
133
143
|
}
|
|
134
144
|
console.log(chalk_1.default.bold(`\nAvailable Tests (${tests.length}):\n`));
|
|
145
|
+
const resolver = new testing_engine_1.VariableResolver();
|
|
135
146
|
for (const [typeName, testsInType] of typeMap) {
|
|
136
147
|
console.log(chalk_1.default.bold.cyan(`${typeName} (${testsInType.length}):`));
|
|
137
148
|
for (const test of testsInType) {
|
|
@@ -140,6 +151,19 @@ class ListCommand {
|
|
|
140
151
|
if (flags.verbose && test.Description) {
|
|
141
152
|
console.log(chalk_1.default.gray(` ${test.Description}`));
|
|
142
153
|
}
|
|
154
|
+
// Show variables if flag is set
|
|
155
|
+
if (flags.showVariables) {
|
|
156
|
+
const testType = types.find(t => t.ID === test.TypeID);
|
|
157
|
+
if (testType?.VariablesSchema) {
|
|
158
|
+
const variables = resolver.getAvailableVariables(testType.VariablesSchema, test.Variables);
|
|
159
|
+
if (variables.length > 0) {
|
|
160
|
+
console.log(chalk_1.default.yellow(` Variables:`));
|
|
161
|
+
for (const variable of variables) {
|
|
162
|
+
this.displayVariable(variable, 6);
|
|
163
|
+
}
|
|
164
|
+
}
|
|
165
|
+
}
|
|
166
|
+
}
|
|
143
167
|
}
|
|
144
168
|
console.log('');
|
|
145
169
|
}
|
|
@@ -172,6 +196,37 @@ class ListCommand {
|
|
|
172
196
|
return '';
|
|
173
197
|
}
|
|
174
198
|
}
|
|
199
|
+
/**
|
|
200
|
+
* Parse variables schema JSON
|
|
201
|
+
*/
|
|
202
|
+
parseVariablesSchema(schemaJson) {
|
|
203
|
+
try {
|
|
204
|
+
const resolver = new testing_engine_1.VariableResolver();
|
|
205
|
+
const schema = resolver.parseTypeSchema(schemaJson);
|
|
206
|
+
return schema?.variables || [];
|
|
207
|
+
}
|
|
208
|
+
catch {
|
|
209
|
+
return [];
|
|
210
|
+
}
|
|
211
|
+
}
|
|
212
|
+
/**
|
|
213
|
+
* Display a single variable definition
|
|
214
|
+
*/
|
|
215
|
+
displayVariable(variable, indent) {
|
|
216
|
+
const prefix = ' '.repeat(indent);
|
|
217
|
+
const required = variable.required ? chalk_1.default.red('*') : '';
|
|
218
|
+
const defaultVal = variable.defaultValue !== undefined
|
|
219
|
+
? chalk_1.default.gray(` (default: ${variable.defaultValue})`)
|
|
220
|
+
: '';
|
|
221
|
+
console.log(`${prefix}${chalk_1.default.white(variable.name)}${required}: ${chalk_1.default.cyan(variable.dataType)}${defaultVal}`);
|
|
222
|
+
if (variable.description) {
|
|
223
|
+
console.log(`${prefix} ${chalk_1.default.gray(variable.description)}`);
|
|
224
|
+
}
|
|
225
|
+
if (variable.possibleValues && variable.possibleValues.length > 0) {
|
|
226
|
+
const values = variable.possibleValues.map(pv => pv.value).join(', ');
|
|
227
|
+
console.log(`${prefix} ${chalk_1.default.gray(`Values: [${values}]`)}`);
|
|
228
|
+
}
|
|
229
|
+
}
|
|
175
230
|
}
|
|
176
231
|
exports.ListCommand = ListCommand;
|
|
177
232
|
//# sourceMappingURL=list.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"list.js","sourceRoot":"","sources":["../../src/commands/list.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;;;;AAEH,
|
|
1
|
+
{"version":3,"file":"list.js","sourceRoot":"","sources":["../../src/commands/list.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"run.d.ts","sourceRoot":"","sources":["../../src/commands/run.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAChD,OAAO,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"run.d.ts","sourceRoot":"","sources":["../../src/commands/run.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAChD,OAAO,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AAOpC;;GAEG;AACH,qBAAa,UAAU;IACnB,OAAO,CAAC,OAAO,CAAwB;IAEvC;;;;;;OAMG;IACG,OAAO,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,EAAE,KAAK,EAAE,QAAQ,EAAE,WAAW,CAAC,EAAE,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC;CAmIpG"}
|
package/dist/commands/run.js
CHANGED
|
@@ -10,6 +10,7 @@ const output_formatter_1 = require("../utils/output-formatter");
|
|
|
10
10
|
const spinner_manager_1 = require("../utils/spinner-manager");
|
|
11
11
|
const config_loader_1 = require("../utils/config-loader");
|
|
12
12
|
const mj_provider_1 = require("../lib/mj-provider");
|
|
13
|
+
const variable_parser_1 = require("../utils/variable-parser");
|
|
13
14
|
/**
|
|
14
15
|
* Run command - Execute a single test or filtered set of tests
|
|
15
16
|
*/
|
|
@@ -74,18 +75,25 @@ class RunCommand {
|
|
|
74
75
|
console.error(output_formatter_1.OutputFormatter.formatError('Must specify test ID, --name, or other filter'));
|
|
75
76
|
process.exit(1);
|
|
76
77
|
}
|
|
78
|
+
// Parse variables from --var flags
|
|
79
|
+
const variablesSchema = (0, variable_parser_1.getTestVariablesSchema)(engine, test.ID);
|
|
80
|
+
const variables = (0, variable_parser_1.parseVariableFlags)(flags.var, variablesSchema);
|
|
77
81
|
// Dry run mode
|
|
78
82
|
if (flags.dryRun) {
|
|
79
83
|
console.log(output_formatter_1.OutputFormatter.formatInfo(`Would run test: ${test.Name}`));
|
|
80
84
|
console.log(output_formatter_1.OutputFormatter.formatInfo(`Type: ${test.Type}`));
|
|
81
85
|
console.log(output_formatter_1.OutputFormatter.formatInfo(`Environment: ${environment}`));
|
|
86
|
+
if (variables) {
|
|
87
|
+
console.log(output_formatter_1.OutputFormatter.formatInfo(`Variables: ${JSON.stringify(variables)}`));
|
|
88
|
+
}
|
|
82
89
|
return;
|
|
83
90
|
}
|
|
84
91
|
// Execute test
|
|
85
92
|
this.spinner.start(`Running test: ${test.Name}...`);
|
|
86
93
|
const result = await engine.RunTest(test.ID, {
|
|
87
94
|
environment,
|
|
88
|
-
verbose: flags.verbose
|
|
95
|
+
verbose: flags.verbose,
|
|
96
|
+
variables
|
|
89
97
|
}, contextUser);
|
|
90
98
|
this.spinner.stop();
|
|
91
99
|
// Handle both single result and array of results (RepeatCount > 1)
|
package/dist/commands/run.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"run.js","sourceRoot":"","sources":["../../src/commands/run.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;AAEH,mEAA4D;AAG5D,gEAA4D;AAC5D,8DAA0D;AAC1D,0DAAuD;AACvD,oDAA2F;
|
|
1
|
+
{"version":3,"file":"run.js","sourceRoot":"","sources":["../../src/commands/run.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"suite.d.ts","sourceRoot":"","sources":["../../src/commands/suite.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAChD,OAAO,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"suite.d.ts","sourceRoot":"","sources":["../../src/commands/suite.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAChD,OAAO,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAOtC;;GAEG;AACH,qBAAa,YAAY;IACrB,OAAO,CAAC,OAAO,CAAwB;IAEvC;;;;;;OAMG;IACG,OAAO,CAAC,OAAO,EAAE,MAAM,GAAG,SAAS,EAAE,KAAK,EAAE,UAAU,EAAE,WAAW,CAAC,EAAE,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC;CA4FvG"}
|
package/dist/commands/suite.js
CHANGED
|
@@ -10,6 +10,7 @@ const output_formatter_1 = require("../utils/output-formatter");
|
|
|
10
10
|
const spinner_manager_1 = require("../utils/spinner-manager");
|
|
11
11
|
const config_loader_1 = require("../utils/config-loader");
|
|
12
12
|
const mj_provider_1 = require("../lib/mj-provider");
|
|
13
|
+
const variable_parser_1 = require("../utils/variable-parser");
|
|
13
14
|
/**
|
|
14
15
|
* Suite command - Execute a test suite
|
|
15
16
|
*/
|
|
@@ -69,12 +70,16 @@ class SuiteCommand {
|
|
|
69
70
|
console.error(output_formatter_1.OutputFormatter.formatError('Must specify suite ID or --name'));
|
|
70
71
|
process.exit(1);
|
|
71
72
|
}
|
|
73
|
+
// Parse variables from --var flags
|
|
74
|
+
// Note: Suite variables apply to all tests - type conversion happens per-test
|
|
75
|
+
const variables = (0, variable_parser_1.parseVariableFlags)(flags.var);
|
|
72
76
|
// Execute suite
|
|
73
77
|
this.spinner.start(`Running test suite: ${suite.Name}...`);
|
|
74
78
|
// Note: parallel and failFast are handled by RunSuite internally
|
|
75
79
|
// We only pass the standard TestRunOptions
|
|
76
80
|
const result = await engine.RunSuite(suite.ID, {
|
|
77
|
-
verbose: flags.verbose
|
|
81
|
+
verbose: flags.verbose,
|
|
82
|
+
variables
|
|
78
83
|
}, contextUser);
|
|
79
84
|
this.spinner.stop();
|
|
80
85
|
// Format and display result
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"suite.js","sourceRoot":"","sources":["../../src/commands/suite.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;AAEH,mEAA4D;AAG5D,gEAA4D;AAC5D,8DAA0D;AAC1D,0DAAuD;AACvD,oDAA2F;
|
|
1
|
+
{"version":3,"file":"suite.js","sourceRoot":"","sources":["../../src/commands/suite.ts"],"names":[],"mappings":"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"}
|
package/dist/types.d.ts
CHANGED
|
@@ -45,6 +45,11 @@ export interface RunFlags extends CommonFlags {
|
|
|
45
45
|
all?: boolean;
|
|
46
46
|
dryRun?: boolean;
|
|
47
47
|
environment?: string;
|
|
48
|
+
/**
|
|
49
|
+
* Variable values to pass to the test (format: name=value)
|
|
50
|
+
* Can be specified multiple times for multiple variables
|
|
51
|
+
*/
|
|
52
|
+
var?: string[];
|
|
48
53
|
}
|
|
49
54
|
/**
|
|
50
55
|
* Flags for suite command
|
|
@@ -54,6 +59,11 @@ export interface SuiteFlags extends CommonFlags {
|
|
|
54
59
|
parallel?: boolean;
|
|
55
60
|
failFast?: boolean;
|
|
56
61
|
sequence?: string;
|
|
62
|
+
/**
|
|
63
|
+
* Variable values to pass to all tests in the suite (format: name=value)
|
|
64
|
+
* Can be specified multiple times for multiple variables
|
|
65
|
+
*/
|
|
66
|
+
var?: string[];
|
|
57
67
|
}
|
|
58
68
|
/**
|
|
59
69
|
* Flags for list command
|
|
@@ -64,6 +74,10 @@ export interface ListFlags extends CommonFlags {
|
|
|
64
74
|
types?: boolean;
|
|
65
75
|
tag?: string;
|
|
66
76
|
status?: string;
|
|
77
|
+
/**
|
|
78
|
+
* Show available variables for the test/test type
|
|
79
|
+
*/
|
|
80
|
+
showVariables?: boolean;
|
|
67
81
|
}
|
|
68
82
|
/**
|
|
69
83
|
* Flags for validate command
|
package/dist/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH;;GAEG;AACH,MAAM,MAAM,YAAY,GAAG,SAAS,GAAG,MAAM,GAAG,UAAU,CAAC;AAE3D;;GAEG;AACH,MAAM,WAAW,SAAS;IACtB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,aAAa,CAAC,EAAE,YAAY,CAAC;IAC7B,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE;QACP,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,MAAM,CAAC,EAAE,MAAM,CAAC;KACnB,CAAC;CACL;AAED;;GAEG;AACH,MAAM,WAAW,WAAW;IACxB,MAAM,CAAC,EAAE,YAAY,CAAC;IACtB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,OAAO,CAAC;CACrB;AAED;;GAEG;AACH,MAAM,WAAW,QAAS,SAAQ,WAAW;IACzC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,GAAG,CAAC,EAAE,OAAO,CAAC;IACd,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,WAAW,CAAC,EAAE,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @fileoverview Variable parsing utilities for CLI
|
|
3
|
+
* @module @memberjunction/testing-cli
|
|
4
|
+
*/
|
|
5
|
+
import { TestEngine } from '@memberjunction/testing-engine';
|
|
6
|
+
import { TestVariableValue } from '@memberjunction/testing-engine-base';
|
|
7
|
+
/**
|
|
8
|
+
* Parse --var flags into a variables object.
|
|
9
|
+
*
|
|
10
|
+
* @param varFlags - Array of var flags in "name=value" format
|
|
11
|
+
* @param testTypeVariablesSchema - Optional type schema for type conversion
|
|
12
|
+
* @returns Parsed variables object
|
|
13
|
+
*/
|
|
14
|
+
export declare function parseVariableFlags(varFlags: string[] | undefined, testTypeVariablesSchema?: string | null): Record<string, TestVariableValue> | undefined;
|
|
15
|
+
/**
|
|
16
|
+
* Get the variables schema for a test (from its test type).
|
|
17
|
+
*
|
|
18
|
+
* @param engine - TestEngine instance
|
|
19
|
+
* @param testId - Test ID
|
|
20
|
+
* @returns Variables schema JSON string or null
|
|
21
|
+
*/
|
|
22
|
+
export declare function getTestVariablesSchema(engine: TestEngine, testId: string): string | null;
|
|
23
|
+
//# sourceMappingURL=variable-parser.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"variable-parser.d.ts","sourceRoot":"","sources":["../../src/utils/variable-parser.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,UAAU,EAAoB,MAAM,gCAAgC,CAAC;AAC9E,OAAO,EAAE,iBAAiB,EAAE,MAAM,qCAAqC,CAAC;AAExE;;;;;;GAMG;AACH,wBAAgB,kBAAkB,CAC9B,QAAQ,EAAE,MAAM,EAAE,GAAG,SAAS,EAC9B,uBAAuB,CAAC,EAAE,MAAM,GAAG,IAAI,GACxC,MAAM,CAAC,MAAM,EAAE,iBAAiB,CAAC,GAAG,SAAS,CAO/C;AAED;;;;;;GAMG;AACH,wBAAgB,sBAAsB,CAClC,MAAM,EAAE,UAAU,EAClB,MAAM,EAAE,MAAM,GACf,MAAM,GAAG,IAAI,CAYf"}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* @fileoverview Variable parsing utilities for CLI
|
|
4
|
+
* @module @memberjunction/testing-cli
|
|
5
|
+
*/
|
|
6
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
7
|
+
exports.getTestVariablesSchema = exports.parseVariableFlags = void 0;
|
|
8
|
+
const testing_engine_1 = require("@memberjunction/testing-engine");
|
|
9
|
+
/**
|
|
10
|
+
* Parse --var flags into a variables object.
|
|
11
|
+
*
|
|
12
|
+
* @param varFlags - Array of var flags in "name=value" format
|
|
13
|
+
* @param testTypeVariablesSchema - Optional type schema for type conversion
|
|
14
|
+
* @returns Parsed variables object
|
|
15
|
+
*/
|
|
16
|
+
function parseVariableFlags(varFlags, testTypeVariablesSchema) {
|
|
17
|
+
if (!varFlags || varFlags.length === 0) {
|
|
18
|
+
return undefined;
|
|
19
|
+
}
|
|
20
|
+
const resolver = new testing_engine_1.VariableResolver();
|
|
21
|
+
return resolver.parseCliVariables(varFlags, testTypeVariablesSchema);
|
|
22
|
+
}
|
|
23
|
+
exports.parseVariableFlags = parseVariableFlags;
|
|
24
|
+
/**
|
|
25
|
+
* Get the variables schema for a test (from its test type).
|
|
26
|
+
*
|
|
27
|
+
* @param engine - TestEngine instance
|
|
28
|
+
* @param testId - Test ID
|
|
29
|
+
* @returns Variables schema JSON string or null
|
|
30
|
+
*/
|
|
31
|
+
function getTestVariablesSchema(engine, testId) {
|
|
32
|
+
const test = engine.GetTestByID(testId);
|
|
33
|
+
if (!test) {
|
|
34
|
+
return null;
|
|
35
|
+
}
|
|
36
|
+
const testType = engine.GetTestTypeByID(test.TypeID);
|
|
37
|
+
if (!testType) {
|
|
38
|
+
return null;
|
|
39
|
+
}
|
|
40
|
+
return testType.VariablesSchema;
|
|
41
|
+
}
|
|
42
|
+
exports.getTestVariablesSchema = getTestVariablesSchema;
|
|
43
|
+
//# sourceMappingURL=variable-parser.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"variable-parser.js","sourceRoot":"","sources":["../../src/utils/variable-parser.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;AAEH,mEAA8E;AAG9E;;;;;;GAMG;AACH,SAAgB,kBAAkB,CAC9B,QAA8B,EAC9B,uBAAuC;IAEvC,IAAI,CAAC,QAAQ,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACrC,OAAO,SAAS,CAAC;IACrB,CAAC;IAED,MAAM,QAAQ,GAAG,IAAI,iCAAgB,EAAE,CAAC;IACxC,OAAO,QAAQ,CAAC,iBAAiB,CAAC,QAAQ,EAAE,uBAAuB,CAAC,CAAC;AACzE,CAAC;AAVD,gDAUC;AAED;;;;;;GAMG;AACH,SAAgB,sBAAsB,CAClC,MAAkB,EAClB,MAAc;IAEd,MAAM,IAAI,GAAG,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;IACxC,IAAI,CAAC,IAAI,EAAE,CAAC;QACR,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,MAAM,QAAQ,GAAG,MAAM,CAAC,eAAe,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACrD,IAAI,CAAC,QAAQ,EAAE,CAAC;QACZ,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,OAAO,QAAQ,CAAC,eAAe,CAAC;AACpC,CAAC;AAfD,wDAeC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@memberjunction/testing-cli",
|
|
3
|
-
"version": "3.
|
|
3
|
+
"version": "3.1.1",
|
|
4
4
|
"description": "MemberJunction Testing Framework CLI - Command-line interface for test execution and management",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"types": "dist/index.d.ts",
|
|
@@ -20,11 +20,12 @@
|
|
|
20
20
|
"@types/debug": "^4.1.12"
|
|
21
21
|
},
|
|
22
22
|
"dependencies": {
|
|
23
|
-
"@memberjunction/global": "3.
|
|
24
|
-
"@memberjunction/core": "3.
|
|
25
|
-
"@memberjunction/core-entities": "3.
|
|
26
|
-
"@memberjunction/testing-engine": "3.
|
|
27
|
-
"@memberjunction/
|
|
23
|
+
"@memberjunction/global": "3.1.1",
|
|
24
|
+
"@memberjunction/core": "3.1.1",
|
|
25
|
+
"@memberjunction/core-entities": "3.1.1",
|
|
26
|
+
"@memberjunction/testing-engine": "3.1.1",
|
|
27
|
+
"@memberjunction/testing-engine-base": "3.1.1",
|
|
28
|
+
"@memberjunction/sqlserver-dataprovider": "3.1.1",
|
|
28
29
|
"@oclif/core": "^3.26.5",
|
|
29
30
|
"ora-classic": "^5.4.2",
|
|
30
31
|
"chalk": "^4.1.2",
|