Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

test: enable trace-events tests for workers #23698

Closed
wants to merge 3 commits into from
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
10 changes: 4 additions & 6 deletions test/parallel/test-trace-events-all.js
Original file line number Diff line number Diff line change
Expand Up @@ -3,20 +3,18 @@ const common = require('../common');
const assert = require('assert');
const cp = require('child_process');
const fs = require('fs');

if (!common.isMainThread)
common.skip('process.chdir is not available in Workers');
const path = require('path');

const CODE =
'setTimeout(() => { for (var i = 0; i < 100000; i++) { "test" + i } }, 1)';
const FILE_NAME = 'node_trace.1.log';

const tmpdir = require('../common/tmpdir');
tmpdir.refresh();
process.chdir(tmpdir.path);
const FILE_NAME = path.join(tmpdir.path, 'node_trace.1.log');

const proc = cp.spawn(process.execPath,
[ '--trace-events-enabled', '-e', CODE ]);
[ '--trace-events-enabled', '-e', CODE ],
{ cwd: tmpdir.path });

proc.once('exit', common.mustCall(() => {
assert(fs.existsSync(FILE_NAME));
Expand Down
3 changes: 1 addition & 2 deletions test/parallel/test-trace-events-api.js
Original file line number Diff line number Diff line change
Expand Up @@ -5,8 +5,7 @@ const common = require('../common');

if (!process.binding('config').hasTracing)
common.skip('missing trace events');
if (!common.isMainThread)
common.skip('process.chdir is not available in Workers');
common.skipIfWorker(); // https://github.com/nodejs/node/issues/22767

const assert = require('assert');
const cp = require('child_process');
Expand Down
10 changes: 4 additions & 6 deletions test/parallel/test-trace-events-async-hooks.js
Original file line number Diff line number Diff line change
Expand Up @@ -3,22 +3,20 @@ const common = require('../common');
const assert = require('assert');
const cp = require('child_process');
const fs = require('fs');
const path = require('path');
const util = require('util');

if (!common.isMainThread)
common.skip('process.chdir is not available in Workers');

const CODE =
'setTimeout(() => { for (var i = 0; i < 100000; i++) { "test" + i } }, 1)';
const FILE_NAME = 'node_trace.1.log';

const tmpdir = require('../common/tmpdir');
tmpdir.refresh();
process.chdir(tmpdir.path);
const FILE_NAME = path.join(tmpdir.path, 'node_trace.1.log');

const proc = cp.spawn(process.execPath,
[ '--trace-event-categories', 'node.async_hooks',
'-e', CODE ]);
'-e', CODE ],
{ cwd: tmpdir.path });

proc.once('exit', common.mustCall(() => {
assert(fs.existsSync(FILE_NAME));
Expand Down
10 changes: 4 additions & 6 deletions test/parallel/test-trace-events-binding.js
Original file line number Diff line number Diff line change
Expand Up @@ -3,9 +3,7 @@ const common = require('../common');
const assert = require('assert');
const cp = require('child_process');
const fs = require('fs');

if (!common.isMainThread)
common.skip('process.chdir is not available in Workers');
const path = require('path');

const CODE = `
const { internalBinding } = require('internal/test/binding');
Expand All @@ -18,17 +16,17 @@ const CODE = `
trace('b'.charCodeAt(0), 'missing',
'type-value', 10, {'extra-value': 20 });
`;
const FILE_NAME = 'node_trace.1.log';

const tmpdir = require('../common/tmpdir');
tmpdir.refresh();
process.chdir(tmpdir.path);
const FILE_NAME = path.join(tmpdir.path, 'node_trace.1.log');

const proc = cp.spawn(process.execPath,
[ '--trace-event-categories', 'custom',
'--no-warnings',
'--expose-internals',
'-e', CODE ]);
'-e', CODE ],
{ cwd: tmpdir.path });

proc.once('exit', common.mustCall(() => {
assert(fs.existsSync(FILE_NAME));
Expand Down
7 changes: 2 additions & 5 deletions test/parallel/test-trace-events-bootstrap.js
Original file line number Diff line number Diff line change
Expand Up @@ -2,13 +2,10 @@
const common = require('../common');
const assert = require('assert');
const cp = require('child_process');
const path = require('path');
const fs = require('fs');
const path = require('path');
const tmpdir = require('../common/tmpdir');

if (!common.isMainThread)
common.skip('process.chdir is not available in Workers');

const names = [
'environment',
'nodeStart',
Expand All @@ -30,10 +27,10 @@ if (process.argv[2] === 'child') {
1 + 1;
} else {
tmpdir.refresh();
process.chdir(tmpdir.path);

const proc = cp.fork(__filename,
[ 'child' ], {
cwd: tmpdir.path,
execArgv: [
'--trace-event-categories',
'node.bootstrap'
Expand Down
10 changes: 4 additions & 6 deletions test/parallel/test-trace-events-category-used.js
Original file line number Diff line number Diff line change
Expand Up @@ -3,9 +3,6 @@ const common = require('../common');
const assert = require('assert');
const cp = require('child_process');

if (!common.isMainThread)
common.skip('process.chdir is not available in Workers');

const CODE = `
const { internalBinding } = require('internal/test/binding');
const { isTraceCategoryEnabled } = internalBinding('trace_events');
Expand All @@ -16,7 +13,6 @@ const CODE = `

const tmpdir = require('../common/tmpdir');
tmpdir.refresh();
process.chdir(tmpdir.path);

const procEnabled = cp.spawn(
process.execPath,
Expand All @@ -25,7 +21,8 @@ const procEnabled = cp.spawn(
// emits a warning.
'--no-warnings',
'--expose-internals',
'-e', CODE ]
'-e', CODE ],
{ cwd: tmpdir.path }
);
let procEnabledOutput = '';

Expand All @@ -42,7 +39,8 @@ const procDisabled = cp.spawn(
// emits a warning.
'--no-warnings',
'--expose-internals',
'-e', CODE ]
'-e', CODE ],
{ cwd: tmpdir.path }
);
let procDisabledOutput = '';

Expand Down
10 changes: 4 additions & 6 deletions test/parallel/test-trace-events-file-pattern.js
Original file line number Diff line number Diff line change
Expand Up @@ -4,12 +4,9 @@ const tmpdir = require('../common/tmpdir');
const assert = require('assert');
const cp = require('child_process');
const fs = require('fs');

if (!common.isMainThread)
common.skip('process.chdir is not available in Workers');
const path = require('path');

tmpdir.refresh();
process.chdir(tmpdir.path);

const CODE =
'setTimeout(() => { for (var i = 0; i < 100000; i++) { "test" + i } }, 1)';
Expand All @@ -20,10 +17,11 @@ const proc = cp.spawn(process.execPath, [
// eslint-disable-next-line no-template-curly-in-string
'${pid}-${rotation}-${pid}-${rotation}.tracing.log',
'-e', CODE
]);
], { cwd: tmpdir.path });

proc.once('exit', common.mustCall(() => {
const expectedFilename = `${proc.pid}-1-${proc.pid}-1.tracing.log`;
const expectedFilename = path.join(tmpdir.path,
`${proc.pid}-1-${proc.pid}-1.tracing.log`);

assert(fs.existsSync(expectedFilename));
fs.readFile(expectedFilename, common.mustCall((err, data) => {
Expand Down
9 changes: 3 additions & 6 deletions test/parallel/test-trace-events-fs-sync.js
Original file line number Diff line number Diff line change
Expand Up @@ -3,13 +3,10 @@ const common = require('../common');
const assert = require('assert');
const cp = require('child_process');
const fs = require('fs');
const path = require('path');
const util = require('util');

if (!common.isMainThread)
common.skip('process.chdir is not available in Workers');

const tests = new Array();
const traceFile = 'node_trace.1.log';

let gid = 1;
let uid = 1;
Expand Down Expand Up @@ -119,14 +116,14 @@ if (common.canCreateSymLink()) {

const tmpdir = require('../common/tmpdir');
tmpdir.refresh();
process.chdir(tmpdir.path);
const traceFile = path.join(tmpdir.path, 'node_trace.1.log');

for (const tr in tests) {
const proc = cp.spawnSync(process.execPath,
[ '--trace-events-enabled',
'--trace-event-categories', 'node.fs.sync',
'-e', tests[tr] ],
{ encoding: 'utf8' });
{ cwd: tmpdir.path, encoding: 'utf8' });
// Some AIX versions don't support futimes or utimes, so skip.
if (common.isAIX && proc.status !== 0 && tr === 'fs.sync.futimes') {
continue;
Expand Down
10 changes: 4 additions & 6 deletions test/parallel/test-trace-events-metadata.js
Original file line number Diff line number Diff line change
Expand Up @@ -3,23 +3,21 @@ const common = require('../common');
const assert = require('assert');
const cp = require('child_process');
const fs = require('fs');

if (!common.isMainThread)
common.skip('process.chdir is not available in Workers');
const path = require('path');

const CODE =
'setTimeout(() => { for (var i = 0; i < 100000; i++) { "test" + i } }, 1);' +
'process.title = "foo"';
const FILE_NAME = 'node_trace.1.log';

const tmpdir = require('../common/tmpdir');
tmpdir.refresh();
process.chdir(tmpdir.path);
const FILE_NAME = path.join(tmpdir.path, 'node_trace.1.log');

const proc = cp.spawn(process.execPath,
[ '--trace-event-categories', 'node.perf.usertiming',
'--title=bar',
'-e', CODE ]);
'-e', CODE ],
{ cwd: tmpdir.path });
proc.once('exit', common.mustCall(() => {
assert(fs.existsSync(FILE_NAME));
fs.readFile(FILE_NAME, common.mustCall((err, data) => {
Expand Down
10 changes: 4 additions & 6 deletions test/parallel/test-trace-events-none.js
Original file line number Diff line number Diff line change
Expand Up @@ -3,21 +3,19 @@ const common = require('../common');
const assert = require('assert');
const cp = require('child_process');
const fs = require('fs');

if (!common.isMainThread)
common.skip('process.chdir is not available in Workers');
const path = require('path');

const CODE =
'setTimeout(() => { for (var i = 0; i < 100000; i++) { "test" + i } }, 1)';
const FILE_NAME = 'node_trace.1.log';

const tmpdir = require('../common/tmpdir');
tmpdir.refresh();
process.chdir(tmpdir.path);
const FILE_NAME = path.join(tmpdir.path, 'node_trace.1.log');

const proc_no_categories = cp.spawn(
process.execPath,
[ '--trace-event-categories', '""', '-e', CODE ]
[ '--trace-event-categories', '""', '-e', CODE ],
{ cwd: tmpdir.path }
);

proc_no_categories.once('exit', common.mustCall(() => {
Expand Down
7 changes: 2 additions & 5 deletions test/parallel/test-trace-events-perf.js
Original file line number Diff line number Diff line change
Expand Up @@ -2,13 +2,10 @@
const common = require('../common');
const assert = require('assert');
const cp = require('child_process');
const path = require('path');
const fs = require('fs');
const path = require('path');
const tmpdir = require('../common/tmpdir');

if (!common.isMainThread)
common.skip('process.chdir is not available in Workers');

if (process.argv[2] === 'child') {
const { performance } = require('perf_hooks');

Expand All @@ -25,7 +22,6 @@ if (process.argv[2] === 'child') {
ff(); // Will emit a timerify trace event
} else {
tmpdir.refresh();
process.chdir(tmpdir.path);

const expectedMarks = ['A', 'B'];
const expectedBegins = [
Expand All @@ -41,6 +37,7 @@ if (process.argv[2] === 'child') {
[
'child'
], {
cwd: tmpdir.path,
execArgv: [
'--trace-event-categories',
'node.perf'
Expand Down
12 changes: 4 additions & 8 deletions test/parallel/test-trace-events-process-exit.js
Original file line number Diff line number Diff line change
Expand Up @@ -3,20 +3,16 @@ const common = require('../common');
const assert = require('assert');
const cp = require('child_process');
const fs = require('fs');

if (!common.isMainThread)
common.skip('process.chdir is not available in Workers');
const path = require('path');

const tmpdir = require('../common/tmpdir');

const FILE_NAME = 'node_trace.1.log';

tmpdir.refresh();
process.chdir(tmpdir.path);
const FILE_NAME = path.join(tmpdir.path, 'node_trace.1.log');

const proc = cp.spawn(process.execPath,
[ '--trace-events-enabled',
'-e', 'process.exit()' ]);
'-e', 'process.exit()' ],
{ cwd: tmpdir.path });

proc.once('exit', common.mustCall(() => {
assert(fs.existsSync(FILE_NAME));
Expand Down
7 changes: 2 additions & 5 deletions test/parallel/test-trace-events-promises.js
Original file line number Diff line number Diff line change
Expand Up @@ -2,15 +2,12 @@
const common = require('../common');
const assert = require('assert');
const cp = require('child_process');
const path = require('path');
const fs = require('fs');
const path = require('path');
const tmpdir = require('../common/tmpdir');

common.disableCrashOnUnhandledRejection();

if (!common.isMainThread)
common.skip('process.chdir is not available in Workers');

if (process.argv[2] === 'child') {
const p = Promise.reject(1); // Handled later
Promise.reject(2); // Unhandled
Expand All @@ -19,10 +16,10 @@ if (process.argv[2] === 'child') {
});
} else {
tmpdir.refresh();
process.chdir(tmpdir.path);

const proc = cp.fork(__filename,
[ 'child' ], {
cwd: tmpdir.path,
execArgv: [
'--no-warnings',
'--trace-event-categories',
Expand Down
10 changes: 4 additions & 6 deletions test/parallel/test-trace-events-v8.js
Original file line number Diff line number Diff line change
Expand Up @@ -3,22 +3,20 @@ const common = require('../common');
const assert = require('assert');
const cp = require('child_process');
const fs = require('fs');

if (!common.isMainThread)
common.skip('process.chdir is not available in Workers');
const path = require('path');

const CODE =
'setTimeout(() => { for (var i = 0; i < 100000; i++) { "test" + i } }, 1)';
const FILE_NAME = 'node_trace.1.log';

const tmpdir = require('../common/tmpdir');
tmpdir.refresh();
process.chdir(tmpdir.path);
const FILE_NAME = path.join(tmpdir.path, 'node_trace.1.log');

const proc = cp.spawn(process.execPath,
[ '--trace-events-enabled',
'--trace-event-categories', 'v8',
'-e', CODE ]);
'-e', CODE ],
{ cwd: tmpdir.path });

proc.once('exit', common.mustCall(() => {
assert(fs.existsSync(FILE_NAME));
Expand Down
Loading