Skip to content

Commit

Permalink
add integration test
Browse files Browse the repository at this point in the history
  • Loading branch information
Lms24 committed Aug 9, 2024
1 parent de63613 commit b484ad5
Show file tree
Hide file tree
Showing 2 changed files with 67 additions and 0 deletions.
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
const { loggingTransport } = require('@sentry-internal/node-integration-tests');
const Sentry = require('@sentry/node');

Sentry.init({
dsn: 'https://[email protected]/1337',
transport: loggingTransport,
debug: true,
});

// express must be required after Sentry is initialized
const express = require('express');
const { startExpressServerAndSendPortToRunner } = require('@sentry-internal/node-integration-tests');

const app = express();

app.get('/test', (_req, res) => {
res.send({
response: `
<html>
<head>
${Sentry.getTraceMetaTags()}
</head>
<body>
Hi :)
</body>
</html>
`,
});
});

Sentry.setupExpressErrorHandler(app);

// TODO: remove port again
startExpressServerAndSendPortToRunner(app, 3000);
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
import { cleanupChildProcesses, createRunner } from '../../../utils/runner';

describe('getTraceMetaTags', () => {
afterAll(() => {
cleanupChildProcesses();
});

test('injects sentry tracing <meta> tags without sampled flag for Tracing Without Performance', async () => {
const runner = createRunner(__dirname, 'server.js').start();

const response = await runner.makeRequest('get', '/test');

// @ts-ignore - response is defined, types just don't reflect it
const html = response?.response as unknown as string;

console.log(html);

const [_, traceId, spanId] = html.match(/<meta name="sentry-trace" content="([a-f0-9]{32})-([a-f0-9]{16})"\/>/) || [
undefined,
undefined,
undefined,
];

expect(traceId).toBeDefined();
expect(spanId).toBeDefined();

const sentryBaggageContent = html.match(/<meta name="baggage" content="(.*)"\/>/)?.[1];

expect(sentryBaggageContent).toEqual(
`sentry-environment=production,sentry-public_key=public,sentry-trace_id=${traceId}`,
);
});
});

0 comments on commit b484ad5

Please sign in to comment.