@betty-blocks/cli 25.28.0 → 25.29.0
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/build/bb-functions-test.js +30 -0
- package/build/bb-functions-test.js.map +1 -0
- package/build/bb-functions.js +2 -0
- package/build/bb-functions.js.map +1 -1
- package/build/functions/testRunner.js +207 -0
- package/build/functions/testRunner.js.map +1 -0
- package/build/types.js.map +1 -1
- package/package.json +2 -1
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/* npm dependencies */
|
|
3
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
4
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
5
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
6
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
7
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
8
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
9
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
10
|
+
});
|
|
11
|
+
};
|
|
12
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
13
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
14
|
+
};
|
|
15
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
16
|
+
const commander_1 = __importDefault(require("commander"));
|
|
17
|
+
/* internal dependencies */
|
|
18
|
+
const testRunner_1 = require("./functions/testRunner");
|
|
19
|
+
/* process arguments */
|
|
20
|
+
commander_1.default
|
|
21
|
+
.usage('[pattern/for/test-files]')
|
|
22
|
+
.name('bb functions test')
|
|
23
|
+
.parse(process.argv);
|
|
24
|
+
const { args: [pattern], } = commander_1.default;
|
|
25
|
+
/* execute command */
|
|
26
|
+
// eslint-disable-next-line no-void
|
|
27
|
+
void (() => __awaiter(void 0, void 0, void 0, function* () {
|
|
28
|
+
yield testRunner_1.runTest(pattern, process.cwd());
|
|
29
|
+
}))();
|
|
30
|
+
//# sourceMappingURL=bb-functions-test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"bb-functions-test.js","sourceRoot":"","sources":["../src/bb-functions-test.ts"],"names":[],"mappings":";AAAA,sBAAsB;;;;;;;;;;;;;;AAEtB,0DAAgC;AAEhC,2BAA2B;AAE3B,uDAAiD;AAEjD,uBAAuB;AAEvB,mBAAO;KACJ,KAAK,CAAC,0BAA0B,CAAC;KACjC,IAAI,CAAC,mBAAmB,CAAC;KACzB,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;AAEvB,MAAM,EACJ,IAAI,EAAE,CAAC,OAAO,CAAC,GAChB,GAAG,mBAAO,CAAC;AAEZ,qBAAqB;AAErB,mCAAmC;AACnC,KAAK,CAAC,GAAwB,EAAE;IAC9B,MAAM,oBAAO,CAAC,OAAO,EAAE,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;AACxC,CAAC,CAAA,CAAC,EAAE,CAAC"}
|
package/build/bb-functions.js
CHANGED
|
@@ -16,6 +16,7 @@ const availableCommands = [
|
|
|
16
16
|
'validate',
|
|
17
17
|
'autoversion',
|
|
18
18
|
'bump',
|
|
19
|
+
'test',
|
|
19
20
|
];
|
|
20
21
|
/* process arguments */
|
|
21
22
|
commander_1.default
|
|
@@ -30,6 +31,7 @@ commander_1.default
|
|
|
30
31
|
.command('new [function-name]', 'Initialize a new function')
|
|
31
32
|
.command('publish', 'publish functions of current working directory')
|
|
32
33
|
.command('validate', 'validate functions of current working directory')
|
|
34
|
+
.command('test', 'test your functions within a local light-weight version of the ActionJS environment')
|
|
33
35
|
.on('command:*', ([command]) => {
|
|
34
36
|
if (!availableCommands.includes(command)) {
|
|
35
37
|
console.error('Invalid command: %s\n', command);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bb-functions.js","sourceRoot":"","sources":["../src/bb-functions.ts"],"names":[],"mappings":";AAAA,sBAAsB;;;;;AAEtB,0DAAgC;AAMhC,WAAW;AAEX,MAAM,iBAAiB,GAAuB;IAC5C,MAAM;IACN,OAAO;IACP,QAAQ;IACR,KAAK;IACL,OAAO;IACP,SAAS;IACT,UAAU;IACV,aAAa;IACb,MAAM;CACP,CAAC;AAEF,uBAAuB;AAEvB,mBAAO;KACJ,KAAK,CAAC,IAAI,iBAAiB,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC;KACzC,IAAI,CAAC,cAAc,CAAC;KACpB,OAAO,CACN,aAAa,EACb,yDAAyD,CAC1D;KACA,OAAO,CAAC,OAAO,EAAE,0DAA0D,CAAC;KAC5E,OAAO,CAAC,MAAM,EAAE,yDAAyD,CAAC;KAC1E,OAAO,CAAC,mBAAmB,EAAE,8BAA8B,CAAC;KAC5D,OAAO,CAAC,OAAO,EAAE,6CAA6C,CAAC;KAC/D,OAAO,CAAC,QAAQ,EAAE,sDAAsD,CAAC;KACzE,OAAO,CAAC,qBAAqB,EAAE,2BAA2B,CAAC;KAC3D,OAAO,CAAC,SAAS,EAAE,gDAAgD,CAAC;KACpE,OAAO,CAAC,UAAU,EAAE,iDAAiD,CAAC;
|
|
1
|
+
{"version":3,"file":"bb-functions.js","sourceRoot":"","sources":["../src/bb-functions.ts"],"names":[],"mappings":";AAAA,sBAAsB;;;;;AAEtB,0DAAgC;AAMhC,WAAW;AAEX,MAAM,iBAAiB,GAAuB;IAC5C,MAAM;IACN,OAAO;IACP,QAAQ;IACR,KAAK;IACL,OAAO;IACP,SAAS;IACT,UAAU;IACV,aAAa;IACb,MAAM;IACN,MAAM;CACP,CAAC;AAEF,uBAAuB;AAEvB,mBAAO;KACJ,KAAK,CAAC,IAAI,iBAAiB,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC;KACzC,IAAI,CAAC,cAAc,CAAC;KACpB,OAAO,CACN,aAAa,EACb,yDAAyD,CAC1D;KACA,OAAO,CAAC,OAAO,EAAE,0DAA0D,CAAC;KAC5E,OAAO,CAAC,MAAM,EAAE,yDAAyD,CAAC;KAC1E,OAAO,CAAC,mBAAmB,EAAE,8BAA8B,CAAC;KAC5D,OAAO,CAAC,OAAO,EAAE,6CAA6C,CAAC;KAC/D,OAAO,CAAC,QAAQ,EAAE,sDAAsD,CAAC;KACzE,OAAO,CAAC,qBAAqB,EAAE,2BAA2B,CAAC;KAC3D,OAAO,CAAC,SAAS,EAAE,gDAAgD,CAAC;KACpE,OAAO,CAAC,UAAU,EAAE,iDAAiD,CAAC;KACtE,OAAO,CACN,MAAM,EACN,qFAAqF,CACtF;KACA,EAAE,CAAC,WAAW,EAAE,CAAC,CAAC,OAAO,CAAW,EAAQ,EAAE;IAC7C,IAAI,CAAC,iBAAiB,CAAC,QAAQ,CAAC,OAA2B,CAAC,EAAE;QAC5D,OAAO,CAAC,KAAK,CAAC,uBAAuB,EAAE,OAAO,CAAC,CAAC;QAChD,mBAAO,CAAC,UAAU,EAAE,CAAC;KACtB;AACH,CAAC,CAAC;KACD,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC"}
|
|
@@ -0,0 +1,207 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/* npm dependencies */
|
|
3
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
4
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
5
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
6
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
7
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
8
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
9
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
10
|
+
});
|
|
11
|
+
};
|
|
12
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
13
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
14
|
+
};
|
|
15
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
16
|
+
const adm_zip_1 = __importDefault(require("adm-zip"));
|
|
17
|
+
const chalk_1 = __importDefault(require("chalk"));
|
|
18
|
+
const fs_extra_1 = __importDefault(require("fs-extra"));
|
|
19
|
+
const glob_1 = __importDefault(require("glob"));
|
|
20
|
+
const isolated_vm_1 = __importDefault(require("isolated-vm"));
|
|
21
|
+
const path_1 = __importDefault(require("path"));
|
|
22
|
+
const child_process_1 = require("child_process");
|
|
23
|
+
/* internal dependencies */
|
|
24
|
+
const functionDefinitions_1 = require("./functionDefinitions");
|
|
25
|
+
/* execute command */
|
|
26
|
+
const check = chalk_1.default.green(`✔`);
|
|
27
|
+
const cross = chalk_1.default.red(`✖`);
|
|
28
|
+
const right = chalk_1.default.green(`›`);
|
|
29
|
+
const build = (pattern, workingDir) => __awaiter(void 0, void 0, void 0, function* () {
|
|
30
|
+
const testFiles = glob_1.default
|
|
31
|
+
.sync(`${pattern || 'test/'}**`.replace(/\\/g, '/'))
|
|
32
|
+
.reduce((files, match) => {
|
|
33
|
+
const file = match.replace(/\//g, path_1.default.sep);
|
|
34
|
+
if (file.match(/\.test\.js$/)) {
|
|
35
|
+
files.push(file);
|
|
36
|
+
}
|
|
37
|
+
return files;
|
|
38
|
+
}, []);
|
|
39
|
+
if (!testFiles.length) {
|
|
40
|
+
return { exitCode: 1, stdout: 'No test files found.', stderr: '' };
|
|
41
|
+
}
|
|
42
|
+
const functionsDir = path_1.default.join(workingDir, 'functions');
|
|
43
|
+
const tmpDir = path_1.default.join(workingDir, '.tmp');
|
|
44
|
+
const zipFile = functionDefinitions_1.zipFunctionDefinitions(functionsDir);
|
|
45
|
+
const zip = new adm_zip_1.default(zipFile);
|
|
46
|
+
zip.extractAllTo(path_1.default.join(tmpDir, 'app'), true);
|
|
47
|
+
fs_extra_1.default.writeJSONSync(path_1.default.join(tmpDir, 'package.json'), {
|
|
48
|
+
name: 'app',
|
|
49
|
+
dependencies: { app: 'file:./app' },
|
|
50
|
+
devDependencies: {
|
|
51
|
+
webpack: '^5.10.0',
|
|
52
|
+
'webpack-cli': '^4.2.0',
|
|
53
|
+
},
|
|
54
|
+
scripts: {
|
|
55
|
+
all: 'yarn --force && yarn build',
|
|
56
|
+
build: 'npx webpack --config webpack.config.js',
|
|
57
|
+
},
|
|
58
|
+
}, { spaces: 2 });
|
|
59
|
+
fs_extra_1.default.writeFileSync(path_1.default.join(tmpDir, 'webpack.config.js'), `module.exports = {
|
|
60
|
+
target: 'node',
|
|
61
|
+
entry: './app.js',
|
|
62
|
+
mode: 'production',
|
|
63
|
+
output: {
|
|
64
|
+
filename: 'app.bundle.js',
|
|
65
|
+
libraryTarget: 'var',
|
|
66
|
+
library: 'app',
|
|
67
|
+
},
|
|
68
|
+
};
|
|
69
|
+
`);
|
|
70
|
+
fs_extra_1.default.writeFileSync(path_1.default.join(tmpDir, 'app.js'), `import { default as $app } from 'app';
|
|
71
|
+
|
|
72
|
+
${testFiles.map((file) => fs_extra_1.default.readFileSync(file, 'utf-8')).join('\n\n')}
|
|
73
|
+
`);
|
|
74
|
+
let stdout = '';
|
|
75
|
+
let stderr = '';
|
|
76
|
+
const exitCode = yield new Promise((res) => {
|
|
77
|
+
const process = child_process_1.spawn(`cd ${tmpDir} && yarn && yarn all`, {
|
|
78
|
+
shell: true,
|
|
79
|
+
});
|
|
80
|
+
process.stdout.on('data', (data) => {
|
|
81
|
+
stdout += data;
|
|
82
|
+
});
|
|
83
|
+
process.stderr.on('data', (data) => {
|
|
84
|
+
stderr += data;
|
|
85
|
+
});
|
|
86
|
+
process.on('close', res);
|
|
87
|
+
});
|
|
88
|
+
return { exitCode, stdout, stderr };
|
|
89
|
+
});
|
|
90
|
+
const run = (workingDir) => {
|
|
91
|
+
const helpers = path_1.default.join(workingDir, 'test', 'helpers.js');
|
|
92
|
+
const bundle = path_1.default.join(workingDir, '.tmp', 'dist', 'app.bundle.js');
|
|
93
|
+
const isolate = new isolated_vm_1.default.Isolate({ memoryLimit: 128 });
|
|
94
|
+
const context = isolate.createContextSync();
|
|
95
|
+
context.global.setSync('ivm', isolated_vm_1.default);
|
|
96
|
+
context.global.setSync(`$console`, new isolated_vm_1.default.Reference((level, args) =>
|
|
97
|
+
// eslint-disable-next-line @typescript-eslint/no-unsafe-argument
|
|
98
|
+
console[level](...args)));
|
|
99
|
+
const script = isolate.compileScriptSync(`function run(resolve, reject) {
|
|
100
|
+
|
|
101
|
+
const tests = [];
|
|
102
|
+
let failures = 0;
|
|
103
|
+
|
|
104
|
+
const console = (() => {
|
|
105
|
+
const log = (level) =>
|
|
106
|
+
(...args) =>
|
|
107
|
+
$console.apply(null, [
|
|
108
|
+
level,
|
|
109
|
+
new ivm.ExternalCopy(args).copyInto()
|
|
110
|
+
]);
|
|
111
|
+
|
|
112
|
+
return {
|
|
113
|
+
log: log('log'),
|
|
114
|
+
debug: log('debug'),
|
|
115
|
+
info: log('info'),
|
|
116
|
+
warn: log('warn'),
|
|
117
|
+
error: log('error'),
|
|
118
|
+
};
|
|
119
|
+
})();
|
|
120
|
+
|
|
121
|
+
const isEqual = (t,e) => {
|
|
122
|
+
function n(t){return Object.prototype.toString.call(t).slice(8,-1).toLowerCase()}let r=n(t);return r===n(e)&&("array"===r?function(){if(t.length!==e.length)return!1;for(let n=0;n<t.length;n++)if(!isEqual(t[n],e[n]))return!1;return!0}():"object"===r?function(){if(Object.keys(t).length!==Object.keys(e).length)return!1;for(let n in t)if(Object.prototype.hasOwnProperty.call(t,n)&&!isEqual(t[n],e[n]))return!1;return!0}():"function"===r?t.toString()===e.toString():t===e)
|
|
123
|
+
};
|
|
124
|
+
|
|
125
|
+
const test = (desc, fn) => {
|
|
126
|
+
tests.push(new Promise((resolve, reject) => {
|
|
127
|
+
fn()
|
|
128
|
+
.then(() => {
|
|
129
|
+
console.log('\\x1b[32m%s\\x1b[0m', '\\u2714 test ' + JSON.stringify(desc));
|
|
130
|
+
resolve();
|
|
131
|
+
})
|
|
132
|
+
.catch((e) => {
|
|
133
|
+
console.log('\\x1b[31m%s\\x1b[0m', '\\u2718 test ' + JSON.stringify(desc));
|
|
134
|
+
console.error(e.message);
|
|
135
|
+
resolve();
|
|
136
|
+
failures++;
|
|
137
|
+
});
|
|
138
|
+
}));
|
|
139
|
+
};
|
|
140
|
+
|
|
141
|
+
const assert = (left, right) => {
|
|
142
|
+
if (!isEqual(left, right)) {
|
|
143
|
+
throw new Error(\`\\x1b[31m Assertion failed\\x1b[0m
|
|
144
|
+
\\x1b[36mleft:\\x1b[0m \${JSON.stringify(left)}
|
|
145
|
+
\\x1b[36mright:\\x1b[0m \${JSON.stringify(right)}\`);
|
|
146
|
+
}
|
|
147
|
+
};
|
|
148
|
+
|
|
149
|
+
${fs_extra_1.default.existsSync(helpers) ? fs_extra_1.default.readFileSync(helpers, 'utf-8') : ''}
|
|
150
|
+
${fs_extra_1.default.readFileSync(bundle, 'utf-8')}
|
|
151
|
+
|
|
152
|
+
Promise.all(tests).then(() => {
|
|
153
|
+
let summary;
|
|
154
|
+
|
|
155
|
+
if (failures) {
|
|
156
|
+
summary = \`\\x1b[31m\${tests.length} tests, \${failures} failure\${
|
|
157
|
+
failures > 1 ? 's' : ''
|
|
158
|
+
}\\x1b[0m\`;
|
|
159
|
+
} else {
|
|
160
|
+
summary = \`\\x1b[32m\${tests.length} tests, 0 failures\\x1b[0m\`;
|
|
161
|
+
}
|
|
162
|
+
|
|
163
|
+
resolve.applyIgnored(null, [
|
|
164
|
+
new ivm.ExternalCopy(summary).copyInto()
|
|
165
|
+
]);
|
|
166
|
+
});
|
|
167
|
+
}
|
|
168
|
+
`);
|
|
169
|
+
return new Promise((resolve, reject) => {
|
|
170
|
+
try {
|
|
171
|
+
script.runSync(context);
|
|
172
|
+
context.global
|
|
173
|
+
.getSync('run', { reference: true })
|
|
174
|
+
.applySync(null, [new isolated_vm_1.default.Reference(resolve), new isolated_vm_1.default.Reference(reject)], { timeout: 60000 });
|
|
175
|
+
}
|
|
176
|
+
catch (error) {
|
|
177
|
+
reject(error);
|
|
178
|
+
}
|
|
179
|
+
});
|
|
180
|
+
};
|
|
181
|
+
const runTest = (pattern, workingDir) => __awaiter(void 0, void 0, void 0, function* () {
|
|
182
|
+
try {
|
|
183
|
+
let time;
|
|
184
|
+
const start = () => new Date().getTime();
|
|
185
|
+
const stop = () => (new Date().getTime() - time) / 1000;
|
|
186
|
+
console.log(`${right} Building artifacts ...`);
|
|
187
|
+
time = start();
|
|
188
|
+
const { exitCode, stdout } = yield build(pattern, workingDir);
|
|
189
|
+
const buildTime = stop();
|
|
190
|
+
if (exitCode) {
|
|
191
|
+
console.log(`${cross} ${stdout}`);
|
|
192
|
+
return;
|
|
193
|
+
}
|
|
194
|
+
console.log(`${check} Build succeeded`);
|
|
195
|
+
console.log(`${right} Running tests ...`);
|
|
196
|
+
time = start();
|
|
197
|
+
const summary = yield run(workingDir);
|
|
198
|
+
const testTime = stop();
|
|
199
|
+
console.log(`\nFinished in ${(buildTime + testTime).toFixed(3)} seconds (build: ${buildTime.toFixed(3)}s, tests: ${testTime.toFixed(3)})`);
|
|
200
|
+
console.log(summary);
|
|
201
|
+
}
|
|
202
|
+
catch (error) {
|
|
203
|
+
console.log(`${cross} ${String(error)}`);
|
|
204
|
+
}
|
|
205
|
+
});
|
|
206
|
+
exports.runTest = runTest;
|
|
207
|
+
//# sourceMappingURL=testRunner.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"testRunner.js","sourceRoot":"","sources":["../../src/functions/testRunner.ts"],"names":[],"mappings":"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"}
|
package/build/types.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":";;AAmIA,IAAY,qBAQX;AARD,WAAY,qBAAqB;IAC/B,4CAAmB,CAAA;IACnB,0CAAiB,CAAA;IACjB,0CAAiB,CAAA;IACjB,wCAAe,CAAA;IACf,sCAAa,CAAA;IACb,sCAAa,CAAA;IACb,0CAAiB,CAAA;AACnB,CAAC,EARW,qBAAqB,GAArB,6BAAqB,KAArB,6BAAqB,QAQhC;AAED,oBAAoB;AACpB,IAAY,yBASX;AATD,WAAY,yBAAyB;IACnC,4CAAe,CAAA;IACf,kDAAqB,CAAA;IACrB,8CAAiB,CAAA;IACjB,0CAAa,CAAA;IACb,sDAAyB,CAAA;IACzB,kDAAqB,CAAA;IACrB,0CAAa,CAAA;IACb,0CAAa,CAAA;AACf,CAAC,EATW,yBAAyB,GAAzB,iCAAyB,KAAzB,iCAAyB,QASpC;AA0BD,IAAY,eAGX;AAHD,WAAY,eAAe;IACzB,oCAAiB,CAAA;IACjB,oCAAiB,CAAA;AACnB,CAAC,EAHW,eAAe,GAAf,uBAAe,KAAf,uBAAe,QAG1B"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@betty-blocks/cli",
|
|
3
|
-
"version": "25.
|
|
3
|
+
"version": "25.29.0",
|
|
4
4
|
"description": "A Betty Blocks CLI",
|
|
5
5
|
"main": "build/index.js",
|
|
6
6
|
"author": "Niek Nijland <niek.nijland@bettyblocks.com>",
|
|
@@ -76,6 +76,7 @@
|
|
|
76
76
|
"form-data": "^4.0.0",
|
|
77
77
|
"fs-extra": "^8.1.0",
|
|
78
78
|
"glob": "^7.2.0",
|
|
79
|
+
"isolated-vm": "^4.0.0",
|
|
79
80
|
"joi": "^17.2.1",
|
|
80
81
|
"jsdoc-api": "^7.1.0",
|
|
81
82
|
"jsonschema": "^1.4.0",
|