From bec31f851f8367a1ba72d01d92877bb7d8d44efa Mon Sep 17 00:00:00 2001 From: Onur Temizkan Date: Fri, 25 Mar 2022 17:58:50 +0000 Subject: [PATCH] test(node): Add `setExtras` integration tests. --- .../setExtras/consecutive-calls/scenario.ts | 17 +++++++++++++++++ .../setExtras/consecutive-calls/test.ts | 11 +++++++++++ .../setExtras/multiple-extras/scenario.ts | 19 +++++++++++++++++++ .../setExtras/multiple-extras/test.ts | 16 ++++++++++++++++ 4 files changed, 63 insertions(+) create mode 100644 packages/node-integration-tests/suites/public-api/setExtras/consecutive-calls/scenario.ts create mode 100644 packages/node-integration-tests/suites/public-api/setExtras/consecutive-calls/test.ts create mode 100644 packages/node-integration-tests/suites/public-api/setExtras/multiple-extras/scenario.ts create mode 100644 packages/node-integration-tests/suites/public-api/setExtras/multiple-extras/test.ts diff --git a/packages/node-integration-tests/suites/public-api/setExtras/consecutive-calls/scenario.ts b/packages/node-integration-tests/suites/public-api/setExtras/consecutive-calls/scenario.ts new file mode 100644 index 000000000000..3c75dbe3f119 --- /dev/null +++ b/packages/node-integration-tests/suites/public-api/setExtras/consecutive-calls/scenario.ts @@ -0,0 +1,17 @@ +import * as Sentry from '@sentry/node'; + +Sentry.init({ + dsn: 'https://public@dsn.ingest.sentry.io/1337', + release: '1.0', +}); + +Sentry.setExtras({ extra: [] }); +Sentry.setExtras({ null: 0 }); +Sentry.setExtras({ + obj: { + foo: ['bar', 'baz', 1], + }, +}); +Sentry.setExtras({ [Infinity]: 2 }); + +Sentry.captureMessage('consecutive_calls'); diff --git a/packages/node-integration-tests/suites/public-api/setExtras/consecutive-calls/test.ts b/packages/node-integration-tests/suites/public-api/setExtras/consecutive-calls/test.ts new file mode 100644 index 000000000000..5126cde1a58f --- /dev/null +++ b/packages/node-integration-tests/suites/public-api/setExtras/consecutive-calls/test.ts @@ -0,0 +1,11 @@ +import { assertSentryEvent, getEventRequest, runServer } from '../../../../utils'; + +test('should set extras from multiple consecutive calls', async () => { + const url = await runServer(__dirname); + const requestBody = await getEventRequest(url); + + assertSentryEvent(requestBody, { + message: 'consecutive_calls', + extra: { extra: [], Infinity: 2, null: 0, obj: { foo: ['bar', 'baz', 1] } }, + }); +}); diff --git a/packages/node-integration-tests/suites/public-api/setExtras/multiple-extras/scenario.ts b/packages/node-integration-tests/suites/public-api/setExtras/multiple-extras/scenario.ts new file mode 100644 index 000000000000..a8fe79a25291 --- /dev/null +++ b/packages/node-integration-tests/suites/public-api/setExtras/multiple-extras/scenario.ts @@ -0,0 +1,19 @@ +import * as Sentry from '@sentry/node'; + +Sentry.init({ + dsn: 'https://public@dsn.ingest.sentry.io/1337', + release: '1.0', +}); + +Sentry.setExtras({ + extra_1: [1, ['foo'], 'bar'], + extra_2: 'baz', + extra_3: Math.PI, + extra_4: { + qux: { + quux: false, + }, + }, +}); + +Sentry.captureMessage('multiple_extras'); diff --git a/packages/node-integration-tests/suites/public-api/setExtras/multiple-extras/test.ts b/packages/node-integration-tests/suites/public-api/setExtras/multiple-extras/test.ts new file mode 100644 index 000000000000..f1c653307e45 --- /dev/null +++ b/packages/node-integration-tests/suites/public-api/setExtras/multiple-extras/test.ts @@ -0,0 +1,16 @@ +import { assertSentryEvent, getEventRequest, runServer } from '../../../../utils'; + +test('should record an extras object', async () => { + const url = await runServer(__dirname); + const requestBody = await getEventRequest(url); + + assertSentryEvent(requestBody, { + message: 'multiple_extras', + extra: { + extra_1: [1, ['foo'], 'bar'], + extra_2: 'baz', + extra_3: 3.141592653589793, + extra_4: { qux: { quux: false } }, + }, + }); +});