Skip to content

Commit 77d24eb

Browse files
committed
test(node): Add utility to test esm & cjs instrumentation
1 parent ae8e59e commit 77d24eb

File tree

37 files changed

+417
-299
lines changed

37 files changed

+417
-299
lines changed

dev-packages/node-integration-tests/.eslintrc.js

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,10 +12,11 @@ module.exports = {
1212
},
1313
},
1414
{
15-
files: ['suites/**/*.ts'],
15+
files: ['suites/**/*.ts', 'suites/**/*.mjs'],
1616
parserOptions: {
1717
project: ['tsconfig.test.json'],
1818
sourceType: 'module',
19+
ecmaVersion: 'latest',
1920
},
2021
rules: {
2122
'@typescript-eslint/typedef': 'off',
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
suites/**/tmp_*

dev-packages/node-integration-tests/suites/anr/app-path.mjs

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,9 @@
1+
import * as Sentry from '@sentry/node';
12
import * as assert from 'assert';
23
import * as crypto from 'crypto';
34
import * as path from 'path';
45
import * as url from 'url';
56

6-
import * as Sentry from '@sentry/node';
7-
87
global._sentryDebugIds = { [new Error().stack]: 'aaaaaaaa-aaaa-4aaa-aaaa-aaaaaaaaaa' };
98

109
const __dirname = path.dirname(url.fileURLToPath(import.meta.url));

dev-packages/node-integration-tests/suites/anr/basic-multiple.mjs

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,7 @@
1+
import * as Sentry from '@sentry/node';
12
import * as assert from 'assert';
23
import * as crypto from 'crypto';
34

4-
import * as Sentry from '@sentry/node';
5-
65
global._sentryDebugIds = { [new Error().stack]: 'aaaaaaaa-aaaa-4aaa-aaaa-aaaaaaaaaa' };
76

87
setTimeout(() => {

dev-packages/node-integration-tests/suites/anr/basic.mjs

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,7 @@
1+
import * as Sentry from '@sentry/node';
12
import * as assert from 'assert';
23
import * as crypto from 'crypto';
34

4-
import * as Sentry from '@sentry/node';
5-
65
global._sentryDebugIds = { [new Error().stack]: 'aaaaaaaa-aaaa-4aaa-aaaa-aaaaaaaaaa' };
76

87
setTimeout(() => {

dev-packages/node-integration-tests/suites/anr/indefinite.mjs

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,7 @@
1+
import * as Sentry from '@sentry/node';
12
import * as assert from 'assert';
23
import * as crypto from 'crypto';
34

4-
import * as Sentry from '@sentry/node';
5-
65
setTimeout(() => {
76
process.exit();
87
}, 10000);

dev-packages/node-integration-tests/suites/anr/isolated.mjs

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,7 @@
1+
import * as Sentry from '@sentry/node';
12
import * as assert from 'assert';
23
import * as crypto from 'crypto';
34

4-
import * as Sentry from '@sentry/node';
5-
65
setTimeout(() => {
76
process.exit();
87
}, 10000);
Lines changed: 15 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
1+
import * as Sentry from '@sentry/node';
2+
import { loggingTransport } from '@sentry-internal/node-integration-tests';
13
import { spawn } from 'child_process';
24
import { join } from 'path';
3-
import { loggingTransport } from '@sentry-internal/node-integration-tests';
4-
import * as Sentry from '@sentry/node';
55
import { Worker } from 'worker_threads';
66

77
const __dirname = new URL('.', import.meta.url).pathname;
@@ -13,16 +13,18 @@ Sentry.init({
1313
transport: loggingTransport,
1414
});
1515

16-
await new Promise(resolve => {
17-
const child = spawn('sleep', ['a']);
18-
child.on('error', resolve);
19-
child.on('exit', resolve);
20-
});
16+
(async () => {
17+
await new Promise(resolve => {
18+
const child = spawn('sleep', ['a']);
19+
child.on('error', resolve);
20+
child.on('exit', resolve);
21+
});
2122

22-
await new Promise(resolve => {
23-
const worker = new Worker(join(__dirname, 'worker.mjs'));
24-
worker.on('error', resolve);
25-
worker.on('exit', resolve);
26-
});
23+
await new Promise(resolve => {
24+
const worker = new Worker(join(__dirname, 'worker.mjs'));
25+
worker.on('error', resolve);
26+
worker.on('exit', resolve);
27+
});
2728

28-
throw new Error('This is a test error');
29+
throw new Error('This is a test error');
30+
})();

dev-packages/node-integration-tests/suites/child-process/fork.mjs

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
1+
import * as Sentry from '@sentry/node';
2+
import { loggingTransport } from '@sentry-internal/node-integration-tests';
13
import { fork } from 'child_process';
24
import * as path from 'path';
3-
import { loggingTransport } from '@sentry-internal/node-integration-tests';
4-
import * as Sentry from '@sentry/node';
55

66
const __dirname = new URL('.', import.meta.url).pathname;
77

@@ -12,6 +12,7 @@ Sentry.init({
1212
transport: loggingTransport,
1313
});
1414

15+
// eslint-disable-next-line no-unused-vars
1516
const _child = fork(path.join(__dirname, 'child.mjs'));
1617

1718
setTimeout(() => {

dev-packages/node-integration-tests/suites/child-process/worker.mjs

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
1-
import * as path from 'path';
2-
import { loggingTransport } from '@sentry-internal/node-integration-tests';
31
import * as Sentry from '@sentry/node';
2+
import { loggingTransport } from '@sentry-internal/node-integration-tests';
3+
import * as path from 'path';
44
import { Worker } from 'worker_threads';
55

66
const __dirname = new URL('.', import.meta.url).pathname;
@@ -12,6 +12,7 @@ Sentry.init({
1212
transport: loggingTransport,
1313
});
1414

15+
// eslint-disable-next-line no-unused-vars
1516
const _worker = new Worker(path.join(__dirname, 'child.mjs'));
1617

1718
setTimeout(() => {

0 commit comments

Comments
 (0)