sentry-testkit 4.1.0 → 5.0.1

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.
Files changed (124) hide show
  1. package/README.md +52 -89
  2. package/dist/browser.d.ts +29 -0
  3. package/dist/browser.d.ts.map +1 -0
  4. package/dist/browser.js +16 -20
  5. package/dist/browser.js.map +1 -0
  6. package/dist/index.d.ts +2 -0
  7. package/dist/index.d.ts.map +1 -0
  8. package/dist/index.js +18 -25
  9. package/dist/index.js.map +1 -0
  10. package/dist/initNetworkInterceptor.d.ts +4 -0
  11. package/dist/initNetworkInterceptor.d.ts.map +1 -0
  12. package/dist/initNetworkInterceptor.js +21 -38
  13. package/dist/initNetworkInterceptor.js.map +1 -0
  14. package/dist/jestMock.d.ts +4 -0
  15. package/dist/jestMock.d.ts.map +1 -0
  16. package/dist/jestMock.js +8 -15
  17. package/dist/jestMock.js.map +1 -0
  18. package/dist/localServerApi.d.ts +11 -0
  19. package/dist/localServerApi.d.ts.map +1 -0
  20. package/dist/localServerApi.js +82 -107
  21. package/dist/localServerApi.js.map +1 -0
  22. package/dist/parsers.d.ts +10 -0
  23. package/dist/parsers.d.ts.map +1 -0
  24. package/dist/parsers.js +27 -48
  25. package/dist/parsers.js.map +1 -0
  26. package/dist/sentryTransport.d.ts +16 -0
  27. package/dist/sentryTransport.d.ts.map +1 -0
  28. package/dist/sentryTransport.js +49 -73
  29. package/dist/sentryTransport.js.map +1 -0
  30. package/dist/src/browser.d.ts +18 -0
  31. package/dist/src/browser.d.ts.map +1 -0
  32. package/dist/src/browser.js +17 -0
  33. package/dist/src/browser.js.map +1 -0
  34. package/dist/src/index.d.ts +24 -0
  35. package/dist/src/index.d.ts.map +1 -0
  36. package/dist/src/index.js +19 -0
  37. package/dist/src/index.js.map +1 -0
  38. package/dist/src/initNetworkInterceptor.d.ts +4 -0
  39. package/dist/src/initNetworkInterceptor.d.ts.map +1 -0
  40. package/dist/src/initNetworkInterceptor.js +26 -0
  41. package/dist/src/initNetworkInterceptor.js.map +1 -0
  42. package/dist/src/jestMock.d.ts +3 -0
  43. package/dist/src/jestMock.d.ts.map +1 -0
  44. package/dist/src/jestMock.js +40 -0
  45. package/dist/src/jestMock.js.map +1 -0
  46. package/dist/src/localServerApi.d.ts +7 -0
  47. package/dist/src/localServerApi.d.ts.map +1 -0
  48. package/dist/src/localServerApi.js +103 -0
  49. package/dist/src/localServerApi.js.map +1 -0
  50. package/dist/src/parsers.d.ts +10 -0
  51. package/dist/src/parsers.d.ts.map +1 -0
  52. package/dist/src/parsers.js +29 -0
  53. package/dist/src/parsers.js.map +1 -0
  54. package/dist/src/sentryTransport.d.ts +16 -0
  55. package/dist/src/sentryTransport.d.ts.map +1 -0
  56. package/dist/src/sentryTransport.js +50 -0
  57. package/dist/src/sentryTransport.js.map +1 -0
  58. package/dist/src/testkit.d.ts +3 -0
  59. package/dist/src/testkit.d.ts.map +1 -0
  60. package/dist/src/testkit.js +70 -0
  61. package/dist/src/testkit.js.map +1 -0
  62. package/dist/src/transformers.d.ts +4 -0
  63. package/dist/src/transformers.d.ts.map +1 -0
  64. package/dist/src/transformers.js +44 -0
  65. package/dist/src/transformers.js.map +1 -0
  66. package/dist/src/types.d.ts +73 -0
  67. package/dist/src/types.d.ts.map +1 -0
  68. package/dist/src/types.js +3 -0
  69. package/dist/src/types.js.map +1 -0
  70. package/dist/test/browser.test.d.ts +2 -0
  71. package/dist/test/browser.test.d.ts.map +1 -0
  72. package/dist/test/browser.test.js +52 -0
  73. package/dist/test/browser.test.js.map +1 -0
  74. package/dist/test/commonTests.d.ts +8 -0
  75. package/dist/test/commonTests.d.ts.map +1 -0
  76. package/dist/test/commonTests.js +461 -0
  77. package/dist/test/commonTests.js.map +1 -0
  78. package/dist/test/fixtures/external-app-perf.d.ts +2 -0
  79. package/dist/test/fixtures/external-app-perf.d.ts.map +1 -0
  80. package/dist/test/fixtures/external-app-perf.js +20 -0
  81. package/dist/test/fixtures/external-app-perf.js.map +1 -0
  82. package/dist/test/fixtures/external-app.d.ts +2 -0
  83. package/dist/test/fixtures/external-app.d.ts.map +1 -0
  84. package/dist/test/fixtures/external-app.js +12 -0
  85. package/dist/test/fixtures/external-app.js.map +1 -0
  86. package/dist/test/jest-mock.help.d.ts +2 -0
  87. package/dist/test/jest-mock.help.d.ts.map +1 -0
  88. package/dist/test/jest-mock.help.js +49 -0
  89. package/dist/test/jest-mock.help.js.map +1 -0
  90. package/dist/test/jest-mock.test.d.ts +2 -0
  91. package/dist/test/jest-mock.test.d.ts.map +1 -0
  92. package/dist/test/jest-mock.test.js +26 -0
  93. package/dist/test/jest-mock.test.js.map +1 -0
  94. package/dist/test/local-server.test.d.ts +2 -0
  95. package/dist/test/local-server.test.d.ts.map +1 -0
  96. package/dist/test/local-server.test.js +213 -0
  97. package/dist/test/local-server.test.js.map +1 -0
  98. package/dist/test/network-interception.test.d.ts +2 -0
  99. package/dist/test/network-interception.test.d.ts.map +1 -0
  100. package/dist/test/network-interception.test.js +80 -0
  101. package/dist/test/network-interception.test.js.map +1 -0
  102. package/dist/test/node.test.d.ts +2 -0
  103. package/dist/test/node.test.d.ts.map +1 -0
  104. package/dist/test/node.test.js +52 -0
  105. package/dist/test/node.test.js.map +1 -0
  106. package/dist/test/puppeteer.test.d.ts +2 -0
  107. package/dist/test/puppeteer.test.d.ts.map +1 -0
  108. package/dist/test/puppeteer.test.js +73 -0
  109. package/dist/test/puppeteer.test.js.map +1 -0
  110. package/dist/testkit.d.ts +14 -0
  111. package/dist/testkit.d.ts.map +1 -0
  112. package/dist/testkit.js +66 -75
  113. package/dist/testkit.js.map +1 -0
  114. package/dist/transformers.d.ts +4 -0
  115. package/dist/transformers.d.ts.map +1 -0
  116. package/dist/transformers.js +40 -38
  117. package/dist/transformers.js.map +1 -0
  118. package/dist/tsconfig.tsbuildinfo +1 -0
  119. package/dist/types.d.ts +73 -0
  120. package/dist/types.d.ts.map +1 -0
  121. package/dist/types.js +3 -0
  122. package/dist/types.js.map +1 -0
  123. package/package.json +14 -4
  124. package/index.d.ts +0 -91
@@ -0,0 +1,40 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || function (mod) {
19
+ if (mod && mod.__esModule) return mod;
20
+ var result = {};
21
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
+ __setModuleDefault(result, mod);
23
+ return result;
24
+ };
25
+ var __importDefault = (this && this.__importDefault) || function (mod) {
26
+ return (mod && mod.__esModule) ? mod : { "default": mod };
27
+ };
28
+ Object.defineProperty(exports, "__esModule", { value: true });
29
+ var Sentry = __importStar(require("@sentry/browser"));
30
+ var index_1 = __importDefault(require("./index"));
31
+ var _a = (0, index_1.default)(), testkit = _a.testkit, sentryTransport = _a.sentryTransport;
32
+ jest.mock('@sentry/browser', function () {
33
+ return Object.assign({}, Sentry, {
34
+ init: function (options) {
35
+ return Sentry.init(Object.assign({}, options, { transport: sentryTransport }));
36
+ },
37
+ });
38
+ });
39
+ exports.default = testkit;
40
+ //# sourceMappingURL=jestMock.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"jestMock.js","sourceRoot":"","sources":["../../src/jestMock.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,sDAAyC;AAEzC,kDAAmC;AAE7B,IAAA,KAA+B,IAAA,eAAa,GAAE,EAA5C,OAAO,aAAA,EAAE,eAAe,qBAAoB,CAAA;AAEpD,IAAI,CAAC,IAAI,CAAC,iBAAiB,EAAE;IAC3B,OAAA,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,MAAM,EAAE;QACxB,IAAI,EAAE,UAAC,OAAuB;YAC5B,OAAA,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,OAAO,EAAE,EAAE,SAAS,EAAE,eAAe,EAAE,CAAC,CAAC;QAAvE,CAAuE;KAC1E,CAAC;AAHF,CAGE,CACH,CAAA;AAED,kBAAe,OAAO,CAAA"}
@@ -0,0 +1,7 @@
1
+ import { Testkit } from './types';
2
+ export declare function createLocalServerApi(testkit: Testkit): {
3
+ start: (userDsn: string) => Promise<unknown>;
4
+ stop: () => Promise<unknown>;
5
+ getDsn: () => string | null;
6
+ };
7
+ //# sourceMappingURL=localServerApi.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"localServerApi.d.ts","sourceRoot":"","sources":["../../src/localServerApi.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAA;AAEjC,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,OAAO;qBAI3B,MAAM;;;EAmG/B"}
@@ -0,0 +1,103 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.createLocalServerApi = void 0;
7
+ var express_1 = __importDefault(require("express"));
8
+ var body_parser_1 = __importDefault(require("body-parser"));
9
+ var http_1 = __importDefault(require("http"));
10
+ var parsers_1 = require("./parsers");
11
+ var transformers_1 = require("./transformers");
12
+ function createLocalServerApi(testkit) {
13
+ var runningServer = null;
14
+ var localDsn = null;
15
+ var start = function (userDsn) {
16
+ if (runningServer !== null) {
17
+ throw new Error('Local server is already running');
18
+ }
19
+ var project = (0, parsers_1.parseDsn)(userDsn).project;
20
+ var app = (0, express_1.default)();
21
+ app.use(function (req, res, next) {
22
+ res.header('Access-Control-Allow-Origin', '*');
23
+ next();
24
+ });
25
+ // the performance endpoint uses a custom non-json payload so
26
+ // we can't use bodyParser.json() directly
27
+ app.use(body_parser_1.default.text({
28
+ type: [
29
+ 'application/json',
30
+ 'application/x-sentry-envelope',
31
+ 'text/plain',
32
+ ],
33
+ }));
34
+ app.post("/api/".concat(project, "/store/"), function (req, res) {
35
+ testkit.reports().push((0, transformers_1.transformReport)(JSON.parse(req.body)));
36
+ res.sendStatus(200);
37
+ });
38
+ app.post("/api/".concat(project, "/envelope/"), function (req, res) {
39
+ if (req.headers['transfer-encoding'] === 'chunked') {
40
+ var rawData_1 = '';
41
+ req.on('data', function (chunk) {
42
+ rawData_1 += chunk;
43
+ });
44
+ req.on('end', function () {
45
+ var _a = (0, parsers_1.parseEnvelopeRequest)(rawData_1), type = _a.type, payload = _a.payload;
46
+ if (type === 'transaction') {
47
+ testkit.transactions().push((0, transformers_1.transformTransaction)(payload));
48
+ }
49
+ if (type === 'event') {
50
+ testkit.reports().push((0, transformers_1.transformReport)(payload));
51
+ }
52
+ res.sendStatus(200);
53
+ });
54
+ }
55
+ else {
56
+ var _a = (0, parsers_1.parseEnvelopeRequest)(req.body), type = _a.type, payload = _a.payload;
57
+ if (type === 'transaction') {
58
+ testkit.transactions().push((0, transformers_1.transformTransaction)(payload));
59
+ }
60
+ res.sendStatus(200);
61
+ }
62
+ });
63
+ runningServer = http_1.default.createServer(app);
64
+ return new Promise(function (resolve) {
65
+ if (runningServer) {
66
+ runningServer.listen(function () {
67
+ // @ts-expect-error
68
+ var port = runningServer.address().port;
69
+ localDsn = "http://acacaeaccacacacabcaacdacdacadaca@localhost:".concat(port, "/").concat(project);
70
+ resolve(undefined);
71
+ });
72
+ }
73
+ else {
74
+ throw new Error('Local server is not running');
75
+ }
76
+ });
77
+ };
78
+ var stop = function () {
79
+ if (runningServer === null) {
80
+ throw new Error('Local server is not running');
81
+ }
82
+ return new Promise(function (resolve, reject) {
83
+ runningServer.close(function (error) {
84
+ return error ? reject(error) : resolve(undefined);
85
+ });
86
+ runningServer = null;
87
+ localDsn = null;
88
+ });
89
+ };
90
+ var getDsn = function () {
91
+ if (runningServer === null) {
92
+ throw new Error('Local server is not running');
93
+ }
94
+ return localDsn;
95
+ };
96
+ return {
97
+ start: start,
98
+ stop: stop,
99
+ getDsn: getDsn,
100
+ };
101
+ }
102
+ exports.createLocalServerApi = createLocalServerApi;
103
+ //# sourceMappingURL=localServerApi.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"localServerApi.js","sourceRoot":"","sources":["../../src/localServerApi.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,10 @@
1
+ export declare function parseDsn(dsn: string): {
2
+ protocol: string;
3
+ project: string;
4
+ host: string;
5
+ };
6
+ export declare function parseEnvelopeRequest(reqBody: string): {
7
+ type: any;
8
+ payload: any;
9
+ };
10
+ //# sourceMappingURL=parsers.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"parsers.d.ts","sourceRoot":"","sources":["../../src/parsers.ts"],"names":[],"mappings":"AAGA,wBAAgB,QAAQ,CAAC,GAAG,EAAE,MAAM;;;;EAoBnC;AAED,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,MAAM;;;EAMnD"}
@@ -0,0 +1,29 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.parseEnvelopeRequest = exports.parseDsn = void 0;
4
+ var dsnKeys = 'source protocol user pass host port path'.split(' ');
5
+ var dsnPattern = /^(?:(\w+):)?\/\/(?:(\w+)(:\w+)?@)?([\w\.-]+)(?::(\d+))?(\/.*)/; //eslint-disable-line no-useless-escape
6
+ function parseDsn(dsn) {
7
+ var dsnMatch = dsn.match(dsnPattern);
8
+ if (!dsnMatch) {
9
+ throw new Error('Could not parse DSN');
10
+ }
11
+ var _a = dsnMatch.reduce(function (parsed, current, index) {
12
+ var _a;
13
+ return Object.assign({}, parsed, (_a = {},
14
+ _a[dsnKeys[index]] = current,
15
+ _a));
16
+ }, {}), protocol = _a.protocol, host = _a.host, path = _a.path;
17
+ var project = path.substr(path.lastIndexOf('/') + 1);
18
+ return { protocol: protocol, project: project, host: host };
19
+ }
20
+ exports.parseDsn = parseDsn;
21
+ function parseEnvelopeRequest(reqBody) {
22
+ var _a = reqBody.split('\n'), _header = _a[0], itemHeader = _a[1], itemPayload = _a[2];
23
+ return {
24
+ type: JSON.parse(itemHeader).type,
25
+ payload: JSON.parse(itemPayload),
26
+ };
27
+ }
28
+ exports.parseEnvelopeRequest = parseEnvelopeRequest;
29
+ //# sourceMappingURL=parsers.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"parsers.js","sourceRoot":"","sources":["../../src/parsers.ts"],"names":[],"mappings":";;;AAAA,IAAM,OAAO,GAAG,0CAA0C,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;AACrE,IAAM,UAAU,GAAG,+DAA+D,CAAA,CAAC,uCAAuC;AAE1H,SAAgB,QAAQ,CAAC,GAAW;IAClC,IAAM,QAAQ,GAAG,GAAG,CAAC,KAAK,CAAC,UAAU,CAAC,CAAA;IACtC,IAAI,CAAC,QAAQ,EAAE;QACb,MAAM,IAAI,KAAK,CAAC,qBAAqB,CAAC,CAAA;KACvC;IACK,IAAA,KAA2B,QAAQ,CAAC,MAAM,CAK9C,UAAC,MAAM,EAAE,OAAO,EAAE,KAAK;;QACrB,OAAA,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,MAAM;YACtB,GAAC,OAAO,CAAC,KAAK,CAAW,IAAG,OAAO;gBACnC;IAFF,CAEE,EACJ,EAAsD,CACvD,EAVO,QAAQ,cAAA,EAAE,IAAI,UAAA,EAAE,IAAI,UAU3B,CAAA;IAED,IAAM,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAA;IAEtD,OAAO,EAAE,QAAQ,UAAA,EAAE,OAAO,SAAA,EAAE,IAAI,MAAA,EAAE,CAAA;AACpC,CAAC;AApBD,4BAoBC;AAED,SAAgB,oBAAoB,CAAC,OAAe;IAC5C,IAAA,KAAqC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,EAAvD,OAAO,QAAA,EAAE,UAAU,QAAA,EAAE,WAAW,QAAuB,CAAA;IAC9D,OAAO;QACL,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,UAAW,CAAC,CAAC,IAAI;QAClC,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,WAAY,CAAC;KAClC,CAAA;AACH,CAAC;AAND,oDAMC"}
@@ -0,0 +1,16 @@
1
+ import { Event } from '@sentry/types';
2
+ import { Testkit } from './types';
3
+ export declare function createSentryTransport(testkit: Testkit): () => {
4
+ captureEvent: (event: Event) => Promise<{
5
+ status: string;
6
+ event: Event;
7
+ }>;
8
+ sendEvent: (event: Event) => Promise<{
9
+ status: string;
10
+ event: Event;
11
+ }>;
12
+ send: (envelope: any) => Promise<void>;
13
+ close: () => Promise<boolean>;
14
+ flush: () => Promise<boolean>;
15
+ };
16
+ //# sourceMappingURL=sentryTransport.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sentryTransport.d.ts","sourceRoot":"","sources":["../../src/sentryTransport.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,eAAe,CAAA;AAErC,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAA;AAEjC,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,OAAO;0BAGhB,KAAK;;;;uBAAL,KAAK;;;;qBAcP,GAAG;;;EA8BtC"}
@@ -0,0 +1,50 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.createSentryTransport = void 0;
4
+ var transformers_1 = require("./transformers");
5
+ function createSentryTransport(testkit) {
6
+ return function () {
7
+ // Send transport for API < v7
8
+ var sendEvent = function (event) {
9
+ if (event.type === 'transaction') {
10
+ testkit.transactions().push((0, transformers_1.transformTransaction)(event));
11
+ }
12
+ else {
13
+ testkit.reports().push((0, transformers_1.transformReport)(event));
14
+ }
15
+ return Promise.resolve({
16
+ status: 'success',
17
+ event: event,
18
+ });
19
+ };
20
+ // Send transport for API v7
21
+ var send = function (envelope) {
22
+ var items = envelope[1];
23
+ // @ts-expect-error
24
+ items.forEach(function (_a) {
25
+ var headers = _a[0], data = _a[1];
26
+ if (headers.type === 'transaction') {
27
+ testkit.transactions().push((0, transformers_1.transformTransaction)(data));
28
+ }
29
+ else if (headers.type === 'event') {
30
+ testkit.reports().push((0, transformers_1.transformReport)(data));
31
+ }
32
+ });
33
+ return Promise.resolve();
34
+ };
35
+ var close = function () {
36
+ return Promise.resolve(true);
37
+ };
38
+ return {
39
+ // captureEvent(event: SentryEvent): Promise<SentryResponse>;
40
+ captureEvent: sendEvent,
41
+ sendEvent: sendEvent,
42
+ send: send,
43
+ // close(timeout?: number): Promise<boolean>;
44
+ close: close,
45
+ flush: close, // support for v7 API
46
+ };
47
+ };
48
+ }
49
+ exports.createSentryTransport = createSentryTransport;
50
+ //# sourceMappingURL=sentryTransport.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sentryTransport.js","sourceRoot":"","sources":["../../src/sentryTransport.ts"],"names":[],"mappings":";;;AACA,+CAAsE;AAGtE,SAAgB,qBAAqB,CAAC,OAAgB;IACpD,OAAO;QACL,8BAA8B;QAC9B,IAAM,SAAS,GAAG,UAAS,KAAY;YACrC,IAAI,KAAK,CAAC,IAAI,KAAK,aAAa,EAAE;gBAChC,OAAO,CAAC,YAAY,EAAE,CAAC,IAAI,CAAC,IAAA,mCAAoB,EAAC,KAAK,CAAC,CAAC,CAAA;aACzD;iBAAM;gBACL,OAAO,CAAC,OAAO,EAAE,CAAC,IAAI,CAAC,IAAA,8BAAe,EAAC,KAAK,CAAC,CAAC,CAAA;aAC/C;YAED,OAAO,OAAO,CAAC,OAAO,CAAC;gBACrB,MAAM,EAAE,SAAS;gBACjB,KAAK,OAAA;aACN,CAAC,CAAA;QACJ,CAAC,CAAA;QAED,4BAA4B;QAC5B,IAAM,IAAI,GAAG,UAAS,QAAa;YACxB,IAAA,KAAK,GAAI,QAAQ,GAAZ,CAAY;YAE1B,mBAAmB;YACnB,KAAK,CAAC,OAAO,CAAC,UAAC,EAAe;oBAAd,OAAO,QAAA,EAAE,IAAI,QAAA;gBAC3B,IAAI,OAAO,CAAC,IAAI,KAAK,aAAa,EAAE;oBAClC,OAAO,CAAC,YAAY,EAAE,CAAC,IAAI,CAAC,IAAA,mCAAoB,EAAC,IAAI,CAAC,CAAC,CAAA;iBACxD;qBAAM,IAAI,OAAO,CAAC,IAAI,KAAK,OAAO,EAAE;oBACnC,OAAO,CAAC,OAAO,EAAE,CAAC,IAAI,CAAC,IAAA,8BAAe,EAAC,IAAI,CAAC,CAAC,CAAA;iBAC9C;YACH,CAAC,CAAC,CAAA;YAEF,OAAO,OAAO,CAAC,OAAO,EAAE,CAAA;QAC1B,CAAC,CAAA;QAED,IAAM,KAAK,GAAG;YACZ,OAAO,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;QAC9B,CAAC,CAAA;QAED,OAAO;YACL,6DAA6D;YAC7D,YAAY,EAAE,SAAS;YACvB,SAAS,WAAA;YACT,IAAI,MAAA;YAEJ,6CAA6C;YAC7C,KAAK,OAAA;YACL,KAAK,EAAE,KAAK,EAAE,qBAAqB;SACpC,CAAA;IACH,CAAC,CAAA;AACH,CAAC;AA/CD,sDA+CC"}
@@ -0,0 +1,3 @@
1
+ import { Testkit } from './types';
2
+ export declare function createTestkit(): Testkit;
3
+ //# sourceMappingURL=testkit.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"testkit.d.ts","sourceRoot":"","sources":["../../src/testkit.ts"],"names":[],"mappings":"AAEA,OAAO,EAAuB,OAAO,EAAe,MAAM,SAAS,CAAA;AAMnE,wBAAgB,aAAa,IAAI,OAAO,CAkEvC"}
@@ -0,0 +1,70 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.createTestkit = void 0;
4
+ var parsers_1 = require("./parsers");
5
+ var transformers_1 = require("./transformers");
6
+ function getException(report) {
7
+ return report.error;
8
+ }
9
+ function createTestkit() {
10
+ var reports = [];
11
+ var transactions = [];
12
+ var puppeteerHandler = null;
13
+ var createPuppeteerHandler = function (baseUrl) { return function (request) {
14
+ var url = request.url();
15
+ if (!url.startsWith(baseUrl)) {
16
+ return;
17
+ }
18
+ var path = url.substring(baseUrl.length);
19
+ if (/\/api\/[0-9]*\/store/.test(path)) {
20
+ reports.push((0, transformers_1.transformReport)(JSON.parse(request.postData())));
21
+ }
22
+ if (/\/api\/[0-9]*\/envelope/.test(path)) {
23
+ var _a = (0, parsers_1.parseEnvelopeRequest)(request.postData()), type = _a.type, payload = _a.payload;
24
+ if (type === 'transaction') {
25
+ transactions.push((0, transformers_1.transformTransaction)(payload));
26
+ }
27
+ }
28
+ }; };
29
+ return {
30
+ puppeteer: {
31
+ startListening: function (page, baseUrl) {
32
+ if (baseUrl === void 0) { baseUrl = 'https://sentry.io'; }
33
+ puppeteerHandler = createPuppeteerHandler(baseUrl);
34
+ page.on('request', puppeteerHandler);
35
+ },
36
+ stopListening: function (page) {
37
+ page.removeListener('request', puppeteerHandler);
38
+ },
39
+ },
40
+ reports: function () {
41
+ return reports;
42
+ },
43
+ transactions: function () {
44
+ return transactions;
45
+ },
46
+ reset: function () {
47
+ reports = [];
48
+ transactions = [];
49
+ },
50
+ getExceptionAt: function (index) {
51
+ if (reports[index]) {
52
+ return getException(reports[index]);
53
+ }
54
+ else {
55
+ throw new Error("There's not report at index ".concat(index));
56
+ }
57
+ },
58
+ findReport: function (e) {
59
+ return reports.find(function (r) {
60
+ var err = getException(r);
61
+ return err && err.name === e.name && err.message === e.message;
62
+ });
63
+ },
64
+ isExist: function (e) {
65
+ return this.findReport(e) !== undefined;
66
+ },
67
+ };
68
+ }
69
+ exports.createTestkit = createTestkit;
70
+ //# sourceMappingURL=testkit.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"testkit.js","sourceRoot":"","sources":["../../src/testkit.ts"],"names":[],"mappings":";;;AAAA,qCAAgD;AAChD,+CAAsE;AAGtE,SAAS,YAAY,CAAC,MAAc;IAClC,OAAO,MAAM,CAAC,KAAK,CAAA;AACrB,CAAC;AAED,SAAgB,aAAa;IAC3B,IAAI,OAAO,GAAa,EAAE,CAAA;IAC1B,IAAI,YAAY,GAAkB,EAAE,CAAA;IAEpC,IAAI,gBAAgB,GAAQ,IAAI,CAAA;IAChC,IAAM,sBAAsB,GAAG,UAAC,OAAe,IAAK,OAAA,UAAC,OAAY;QAC/D,IAAM,GAAG,GAAG,OAAO,CAAC,GAAG,EAAE,CAAA;QACzB,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE;YAC5B,OAAM;SACP;QACD,IAAM,IAAI,GAAG,GAAG,CAAC,SAAS,CAAC,OAAO,CAAC,MAAM,CAAC,CAAA;QAC1C,IAAI,sBAAsB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;YACrC,OAAO,CAAC,IAAI,CAAC,IAAA,8BAAe,EAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,CAAA;SAC9D;QACD,IAAI,yBAAyB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;YAClC,IAAA,KAAoB,IAAA,8BAAoB,EAAC,OAAO,CAAC,QAAQ,EAAE,CAAC,EAA1D,IAAI,UAAA,EAAE,OAAO,aAA6C,CAAA;YAClE,IAAI,IAAI,KAAK,aAAa,EAAE;gBAC1B,YAAY,CAAC,IAAI,CAAC,IAAA,mCAAoB,EAAC,OAAO,CAAC,CAAC,CAAA;aACjD;SACF;IACH,CAAC,EAfmD,CAenD,CAAA;IAED,OAAO;QACL,SAAS,EAAE;YACT,cAAc,EAAE,UAAC,IAAS,EAAE,OAAqC;gBAArC,wBAAA,EAAA,6BAAqC;gBAC/D,gBAAgB,GAAG,sBAAsB,CAAC,OAAO,CAAC,CAAA;gBAClD,IAAI,CAAC,EAAE,CAAC,SAAS,EAAE,gBAAgB,CAAC,CAAA;YACtC,CAAC;YAED,aAAa,EAAE,UAAC,IAAS;gBACvB,IAAI,CAAC,cAAc,CAAC,SAAS,EAAE,gBAAgB,CAAC,CAAA;YAClD,CAAC;SACF;QAED,OAAO;YACL,OAAO,OAAO,CAAA;QAChB,CAAC;QAED,YAAY;YACV,OAAO,YAAY,CAAA;QACrB,CAAC;QAED,KAAK;YACH,OAAO,GAAG,EAAE,CAAA;YACZ,YAAY,GAAG,EAAE,CAAA;QACnB,CAAC;QAED,cAAc,YAAC,KAAa;YAC1B,IAAI,OAAO,CAAC,KAAK,CAAC,EAAE;gBAClB,OAAO,YAAY,CAAC,OAAO,CAAC,KAAK,CAAE,CAAC,CAAA;aACrC;iBAAM;gBACL,MAAM,IAAI,KAAK,CAAC,sCAA+B,KAAK,CAAE,CAAC,CAAA;aACxD;QACH,CAAC;QAED,UAAU,YAAC,CAAc;YACvB,OAAO,OAAO,CAAC,IAAI,CAAC,UAAA,CAAC;gBACnB,IAAM,GAAG,GAAG,YAAY,CAAC,CAAC,CAAC,CAAA;gBAC3B,OAAO,GAAG,IAAI,GAAG,CAAC,IAAI,KAAK,CAAC,CAAC,IAAI,IAAI,GAAG,CAAC,OAAO,KAAK,CAAC,CAAC,OAAO,CAAA;YAChE,CAAC,CAAC,CAAA;QACJ,CAAC;QAED,OAAO,YAAC,CAAc;YACpB,OAAO,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,KAAK,SAAS,CAAA;QACzC,CAAC;KACF,CAAA;AACH,CAAC;AAlED,sCAkEC"}
@@ -0,0 +1,4 @@
1
+ import { Report, Transaction } from './types';
2
+ export declare function transformReport(report: any): Report;
3
+ export declare function transformTransaction(item: any): Transaction;
4
+ //# sourceMappingURL=transformers.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"transformers.d.ts","sourceRoot":"","sources":["../../src/transformers.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAe,WAAW,EAAE,MAAM,SAAS,CAAA;AAE1D,wBAAgB,eAAe,CAAC,MAAM,EAAE,GAAG,GAAG,MAAM,CAsBnD;AAED,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,GAAG,GAAG,WAAW,CAgB3D"}
@@ -0,0 +1,44 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.transformTransaction = exports.transformReport = void 0;
4
+ function transformReport(report) {
5
+ var exception = report.exception && report.exception.values && report.exception.values[0];
6
+ var error = exception
7
+ ? {
8
+ name: exception.type,
9
+ message: exception.value,
10
+ stacktrace: exception.stacktrace,
11
+ }
12
+ : undefined;
13
+ return {
14
+ breadcrumbs: report.breadcrumbs || [],
15
+ error: error,
16
+ message: report.message,
17
+ extra: report.extra,
18
+ level: report.level || 'error',
19
+ release: report.release,
20
+ user: report.user,
21
+ tags: report.tags || {},
22
+ originalReport: report,
23
+ };
24
+ }
25
+ exports.transformReport = transformReport;
26
+ function transformTransaction(item) {
27
+ return {
28
+ name: item.transaction,
29
+ traceId: item.contexts.trace.trace_id,
30
+ release: item.release,
31
+ tags: item.tags || {},
32
+ extra: item.extra,
33
+ spans: item.spans.map(function (span) { return ({
34
+ // @ts-expect-error
35
+ id: span.span_id || span.spanId,
36
+ op: span.op,
37
+ // @ts-expect-error
38
+ parentSpanId: span.parent_span_id || span.parentSpanId,
39
+ description: span.description,
40
+ }); }),
41
+ };
42
+ }
43
+ exports.transformTransaction = transformTransaction;
44
+ //# sourceMappingURL=transformers.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"transformers.js","sourceRoot":"","sources":["../../src/transformers.ts"],"names":[],"mappings":";;;AAGA,SAAgB,eAAe,CAAC,MAAW;IACzC,IAAM,SAAS,GACb,MAAM,CAAC,SAAS,IAAI,MAAM,CAAC,SAAS,CAAC,MAAM,IAAI,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,CAAA;IAC3E,IAAM,KAAK,GAA4B,SAAS;QAC9C,CAAC,CAAC;YACE,IAAI,EAAE,SAAS,CAAC,IAAI;YACpB,OAAO,EAAE,SAAS,CAAC,KAAK;YACxB,UAAU,EAAE,SAAS,CAAC,UAAU;SACjC;QACH,CAAC,CAAC,SAAS,CAAA;IAEb,OAAO;QACL,WAAW,EAAE,MAAM,CAAC,WAAW,IAAI,EAAE;QACrC,KAAK,OAAA;QACL,OAAO,EAAE,MAAM,CAAC,OAAO;QACvB,KAAK,EAAE,MAAM,CAAC,KAAK;QACnB,KAAK,EAAE,MAAM,CAAC,KAAK,IAAI,OAAO;QAC9B,OAAO,EAAE,MAAM,CAAC,OAAO;QACvB,IAAI,EAAE,MAAM,CAAC,IAAI;QACjB,IAAI,EAAE,MAAM,CAAC,IAAI,IAAI,EAAE;QACvB,cAAc,EAAE,MAAM;KACvB,CAAA;AACH,CAAC;AAtBD,0CAsBC;AAED,SAAgB,oBAAoB,CAAC,IAAS;IAC5C,OAAO;QACL,IAAI,EAAE,IAAI,CAAC,WAAW;QACtB,OAAO,EAAE,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,QAAQ;QACrC,OAAO,EAAE,IAAI,CAAC,OAAO;QACrB,IAAI,EAAE,IAAI,CAAC,IAAI,IAAI,EAAE;QACrB,KAAK,EAAE,IAAI,CAAC,KAAK;QACjB,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,UAAC,IAAU,IAAK,OAAA,CAAC;YACrC,mBAAmB;YACnB,EAAE,EAAE,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,MAAM;YAC/B,EAAE,EAAE,IAAI,CAAC,EAAE;YACX,mBAAmB;YACnB,YAAY,EAAE,IAAI,CAAC,cAAc,IAAI,IAAI,CAAC,YAAY;YACtD,WAAW,EAAE,IAAI,CAAC,WAAW;SAC9B,CAAC,EAPoC,CAOpC,CAAC;KACJ,CAAA;AACH,CAAC;AAhBD,oDAgBC"}
@@ -0,0 +1,73 @@
1
+ import { Event, Breadcrumb, User, SeverityLevel, StackFrame, Transport } from '@sentry/types';
2
+ export = sentryTestkit;
3
+ declare function sentryTestkit<T extends sentryTestkit.V6TransportClass | sentryTestkit.V7TransportFunction>(): sentryTestkit.TestkitResult<T>;
4
+ declare namespace sentryTestkit {
5
+ interface Page {
6
+ on(event: string, handler: (...args: any[]) => any): void;
7
+ removeListener(event: string, handler: (...args: any[]) => any): void;
8
+ }
9
+ interface ReportError {
10
+ name: string;
11
+ message: string;
12
+ stacktrace: StackFrame[];
13
+ }
14
+ interface Report {
15
+ breadcrumbs: Breadcrumb[];
16
+ error?: ReportError;
17
+ message?: string;
18
+ extra?: {
19
+ [key: string]: any;
20
+ };
21
+ level: SeverityLevel;
22
+ release?: string;
23
+ user?: User;
24
+ tags: {
25
+ [key: string]: string;
26
+ };
27
+ originalReport: Event;
28
+ }
29
+ interface Span {
30
+ id: string;
31
+ op?: string;
32
+ description?: string;
33
+ parentSpanId: string;
34
+ }
35
+ interface Transaction {
36
+ name: string;
37
+ traceId: string;
38
+ release?: string;
39
+ extra?: Record<string, unknown>;
40
+ tags: Record<string, unknown>;
41
+ spans: Span[];
42
+ }
43
+ interface Testkit {
44
+ puppeteer: {
45
+ startListening(page: Page, baseUrl?: String): void;
46
+ stopListening(page: Page): void;
47
+ };
48
+ reports(): Report[];
49
+ transactions(): Transaction[];
50
+ reset(): void;
51
+ getExceptionAt(index: number): ReportError | undefined;
52
+ findReport(e: Error): Report | undefined;
53
+ isExist(e: Error): boolean;
54
+ }
55
+ interface LocalServer {
56
+ start: (dsn: string) => Promise<void>;
57
+ stop: () => Promise<void>;
58
+ getDsn: () => string;
59
+ }
60
+ type V6TransportClass = {
61
+ new (): Transport;
62
+ };
63
+ type V7TransportFunction = () => Transport;
64
+ interface TestkitResult<Transport extends V6TransportClass | V7TransportFunction> {
65
+ testkit: Testkit;
66
+ sentryTransport: Transport;
67
+ initNetworkInterceptor<T>(dsn: string, initCallback: (baseUrl: string, handleRequestBody: (requestBody: {
68
+ [key: string]: any;
69
+ }) => void) => T): T;
70
+ localServer: LocalServer;
71
+ }
72
+ }
73
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ module.exports = sentryTestkit;
3
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":";AASA,iBAAS,aAAa,CAAA"}
@@ -0,0 +1,2 @@
1
+ import '@sentry/tracing';
2
+ //# sourceMappingURL=browser.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"browser.test.d.ts","sourceRoot":"","sources":["../../test/browser.test.ts"],"names":[],"mappings":"AAKA,OAAO,iBAAiB,CAAA"}
@@ -0,0 +1,52 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || function (mod) {
19
+ if (mod && mod.__esModule) return mod;
20
+ var result = {};
21
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
+ __setModuleDefault(result, mod);
23
+ return result;
24
+ };
25
+ var __importDefault = (this && this.__importDefault) || function (mod) {
26
+ return (mod && mod.__esModule) ? mod : { "default": mod };
27
+ };
28
+ Object.defineProperty(exports, "__esModule", { value: true });
29
+ var BrowserSentry = __importStar(require("@sentry/browser"));
30
+ var src_1 = __importDefault(require("../src"));
31
+ var commonTests_1 = require("./commonTests");
32
+ require("@sentry/tracing");
33
+ var _a = (0, src_1.default)(), testkit = _a.testkit, sentryTransport = _a.sentryTransport;
34
+ var DUMMY_DSN = 'https://acacaeaccacacacabcaacdacdacadaca@sentry.io/000001';
35
+ var Sentry = BrowserSentry;
36
+ describe('sentry test-kit test suite - @sentry/browser', function () {
37
+ beforeAll(function () {
38
+ return Sentry.init({
39
+ dsn: DUMMY_DSN,
40
+ release: 'test',
41
+ tracesSampleRate: 1,
42
+ transport: sentryTransport,
43
+ beforeSend: function (event) {
44
+ event.extra = { os: 'mac-os' };
45
+ return event;
46
+ },
47
+ });
48
+ });
49
+ beforeEach(function () { return testkit.reset(); });
50
+ (0, commonTests_1.createCommonTests)({ Sentry: Sentry, testkit: testkit });
51
+ });
52
+ //# sourceMappingURL=browser.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"browser.test.js","sourceRoot":"","sources":["../../test/browser.test.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AACA,6DAAgD;AAChD,+CAAkC;AAClC,6CAAiD;AAEjD,2BAAwB;AAElB,IAAA,KAA+B,IAAA,aAAa,GAAE,EAA5C,OAAO,aAAA,EAAE,eAAe,qBAAoB,CAAA;AACpD,IAAM,SAAS,GAAG,2DAA2D,CAAA;AAC7E,IAAM,MAAM,GAAG,aAAa,CAAA;AAE5B,QAAQ,CAAC,8CAA8C,EAAE;IACvD,SAAS,CAAC;QACR,OAAA,MAAM,CAAC,IAAI,CAAC;YACV,GAAG,EAAE,SAAS;YACd,OAAO,EAAE,MAAM;YACf,gBAAgB,EAAE,CAAC;YACnB,SAAS,EAAE,eAAe;YAC1B,UAAU,YAAC,KAAY;gBACrB,KAAK,CAAC,KAAK,GAAG,EAAE,EAAE,EAAE,QAAQ,EAAE,CAAA;gBAC9B,OAAO,KAAK,CAAA;YACd,CAAC;SACF,CAAC;IATF,CASE,CACH,CAAA;IAED,UAAU,CAAC,cAAM,OAAA,OAAO,CAAC,KAAK,EAAE,EAAf,CAAe,CAAC,CAAA;IAEjC,IAAA,+BAAiB,EAAC,EAAE,MAAM,QAAA,EAAE,OAAO,SAAA,EAAE,CAAC,CAAA;AACxC,CAAC,CAAC,CAAA"}
@@ -0,0 +1,8 @@
1
+ import * as NodeSentry from '@sentry/node';
2
+ import * as BrowserSentry from '@sentry/browser';
3
+ import { Testkit } from '../src/types';
4
+ export declare function createCommonTests({ Sentry, testkit, }: {
5
+ Sentry: typeof NodeSentry | typeof BrowserSentry;
6
+ testkit: Testkit;
7
+ }): void;
8
+ //# sourceMappingURL=commonTests.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"commonTests.d.ts","sourceRoot":"","sources":["../../test/commonTests.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,UAAU,MAAM,cAAc,CAAA;AAC1C,OAAO,KAAK,aAAa,MAAM,iBAAiB,CAAA;AAEhD,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAA;AAEtC,wBAAgB,iBAAiB,CAAC,EAChC,MAAM,EACN,OAAO,GACR,EAAE;IACD,MAAM,EAAE,OAAO,UAAU,GAAG,OAAO,aAAa,CAAA;IAChD,OAAO,EAAE,OAAO,CAAA;CACjB,QA2MA"}