datagrok-tools 4.14.64 → 4.14.65
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/bin/commands/test-all.js +4 -1
- package/bin/utils/test-utils.js +22 -3
- package/package.json +2 -3
package/bin/commands/test-all.js
CHANGED
|
@@ -60,7 +60,10 @@ async function testAll(args) {
|
|
|
60
60
|
}));
|
|
61
61
|
utils.setHost(args.host, config);
|
|
62
62
|
let packagesToRun = await testUtils.loadPackages(curDir, args.packages, args.host, args['skip-publish'], args['skip-build']);
|
|
63
|
-
|
|
63
|
+
console.log('Loading tests');
|
|
64
|
+
let start = Date.now();
|
|
65
|
+
let testsObj = await (0, _testUtils.loadTestsList)(packagesToRun, args.core ?? false, args.record ?? false);
|
|
66
|
+
console.log(`Loaded tests in ${Date.now() - start} ms`);
|
|
64
67
|
let filteredTests = await filterTests(testsObj, (args.tags ?? "").split(" "), args['stress-test'], args.benchmark);
|
|
65
68
|
let browsersOrder = await setBrowsersOrder(filteredTests, getEnumOrder(args.order ?? ''), args['browsers-count'], args.testRepeat);
|
|
66
69
|
let testsResults = await runTests(browsersOrder, {
|
package/bin/utils/test-utils.js
CHANGED
|
@@ -220,13 +220,31 @@ async function loadPackages(packagesDir, packagesToLoad, host, skipPublish, skip
|
|
|
220
220
|
console.log();
|
|
221
221
|
return Array.from(packagesToRun).filter(([_, value]) => value).map(([key, _]) => key);
|
|
222
222
|
}
|
|
223
|
-
async function loadTestsList(packages, core = false) {
|
|
223
|
+
async function loadTestsList(packages, core = false, record = false) {
|
|
224
224
|
const packageTestsData = await timeout(async () => {
|
|
225
225
|
const params = Object.assign({}, defaultLaunchParameters);
|
|
226
|
-
// params['headless'] = false;
|
|
227
226
|
const out = await getBrowserPage(_puppeteer.default, params);
|
|
228
227
|
const browser = out.browser;
|
|
229
228
|
const page = out.page;
|
|
229
|
+
let recorder = null;
|
|
230
|
+
if (record) {
|
|
231
|
+
const suffix = process.env.BACKUP_SIZE && process.env.WORKER_ID && process.env.TOTAL_WORKERS ? `_${process.env.BACKUP_SIZE}_${process.env.WORKER_ID}_${process.env.TOTAL_WORKERS}` : '';
|
|
232
|
+
const logsDir = `./load-test-console-output${suffix}.log`;
|
|
233
|
+
const recordDir = `./load-test-record${suffix}.mp4`;
|
|
234
|
+
recorder = new _puppeteerScreenRecorder.PuppeteerScreenRecorder(page, recorderConfig);
|
|
235
|
+
await recorder.start(recordDir);
|
|
236
|
+
await page.exposeFunction('addLogsToFile', addLogsToFile);
|
|
237
|
+
_fs.default.writeFileSync(logsDir, ``);
|
|
238
|
+
page.on('console', msg => {
|
|
239
|
+
addLogsToFile(logsDir, `CONSOLE LOG ENTRY: ${msg.text()}\n`);
|
|
240
|
+
});
|
|
241
|
+
page.on('pageerror', error => {
|
|
242
|
+
addLogsToFile(logsDir, `CONSOLE LOG ERROR: ${error.message}\n`);
|
|
243
|
+
});
|
|
244
|
+
page.on('response', response => {
|
|
245
|
+
addLogsToFile(logsDir, `CONSOLE LOG REQUEST: ${response.status()}, ${response.url()}\n`);
|
|
246
|
+
});
|
|
247
|
+
}
|
|
230
248
|
const r = await page.evaluate((packages, coreTests) => {
|
|
231
249
|
return new Promise((resolve, reject) => {
|
|
232
250
|
const promises = [];
|
|
@@ -267,7 +285,8 @@ async function loadTestsList(packages, core = false) {
|
|
|
267
285
|
});
|
|
268
286
|
});
|
|
269
287
|
}, packages, core);
|
|
270
|
-
|
|
288
|
+
await recorder?.stop();
|
|
289
|
+
await browser?.close();
|
|
271
290
|
return r;
|
|
272
291
|
}, testCollectionTimeout);
|
|
273
292
|
const testsList = [];
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "datagrok-tools",
|
|
3
|
-
"version": "4.14.
|
|
3
|
+
"version": "4.14.65",
|
|
4
4
|
"description": "Utility to upload and publish packages to Datagrok",
|
|
5
5
|
"homepage": "https://github.com/datagrok-ai/public/tree/master/tools#readme",
|
|
6
6
|
"dependencies": {
|
|
@@ -31,8 +31,7 @@
|
|
|
31
31
|
"link": "npm link",
|
|
32
32
|
"prepublishOnly": "babel bin --extensions .ts -d bin",
|
|
33
33
|
"babel": "babel bin --extensions .ts -d bin",
|
|
34
|
-
"build": "babel bin --extensions .ts -d bin"
|
|
35
|
-
"debug-source-map": "babel bin --extensions .ts -d bin --source-maps true"
|
|
34
|
+
"build": "babel bin --extensions .ts -d bin"
|
|
36
35
|
},
|
|
37
36
|
"bin": {
|
|
38
37
|
"datagrok-upload": "./bin/_deprecated/upload.js",
|