Skip to content

Commit cb35f42

Browse files
committed
add basic setupNodeTransport tests
all tests will need refactoring once the new transports become the default
1 parent 5b0226f commit cb35f42

File tree

1 file changed

+44
-0
lines changed

1 file changed

+44
-0
lines changed
Lines changed: 44 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,44 @@
1+
import { NoopTransport } from '@sentry/core';
2+
import { FakeTransport } from '@sentry/core/test/mocks/transport';
3+
import { HTTPSTransport, HTTPTransport, setupNodeTransport } from '@sentry/node/src/transports';
4+
5+
const DSN = 'https://username@domain/123';
6+
7+
describe('setupNodeTransport', () => {
8+
it('returns NoopTransport if no dsn is passed', () => {
9+
const { transport, newTransport } = setupNodeTransport({});
10+
11+
expect(transport).toBeDefined();
12+
expect(transport).toBeInstanceOf(NoopTransport);
13+
expect(newTransport).toBeUndefined();
14+
});
15+
16+
it('returns the instantiated transport passed via the options', () => {
17+
const options = { dsn: DSN, transport: FakeTransport };
18+
const { transport, newTransport } = setupNodeTransport(options);
19+
20+
expect(transport).toBeDefined();
21+
expect(transport).toBeInstanceOf(FakeTransport);
22+
expect(newTransport).toBeUndefined();
23+
});
24+
25+
it('returns HTTPS transport as a default', () => {
26+
const options = { dsn: DSN };
27+
const { transport, newTransport } = setupNodeTransport(options);
28+
29+
expect(transport).toBeDefined();
30+
expect(transport).toBeInstanceOf(HTTPSTransport);
31+
expect(newTransport).toBeDefined();
32+
});
33+
34+
it('returns HTTP transport if specified in the dsn', () => {
35+
// fetchSupported = false;
36+
37+
const options = { dsn: 'http://username@domain/123' };
38+
const { transport, newTransport } = setupNodeTransport(options);
39+
40+
expect(transport).toBeDefined();
41+
expect(transport).toBeInstanceOf(HTTPTransport);
42+
expect(newTransport).toBeDefined();
43+
});
44+
});

0 commit comments

Comments
 (0)