Skip to content

Commit b85216b

Browse files
nicohrubecclaude
andcommitted
test: Update streamed segment span expectations for sentry.sdk.integrations
Segment spans now ship a sentry.sdk.integrations attribute listing the active SDK integrations. Add the attribute to the full-shape assertions in the browser unit test, the browser/node/cloudflare streamed integration tests, and the Deno e2e test. Matching uses expect.arrayContaining against the explicit integrations configured in each scenario, to stay resilient to default-integration churn. Co-Authored-By: Claude Opus 4.7 (1M context) <[email protected]>
1 parent 74cb48b commit b85216b

8 files changed

Lines changed: 35 additions & 3 deletions

File tree

  • dev-packages
    • browser-integration-tests/suites
      • public-api/startSpan/streamed
      • tracing/browserTracingIntegration
    • cloudflare-integration-tests/suites/public-api/startSpan-streamed
    • e2e-tests/test-applications/deno-streamed/tests
    • node-integration-tests/suites/public-api/startSpan/basic-usage-streamed
  • packages/browser/test/integrations

dev-packages/browser-integration-tests/suites/public-api/startSpan/streamed/test.ts

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@ import {
44
SEMANTIC_ATTRIBUTE_SENTRY_OP,
55
SEMANTIC_ATTRIBUTE_SENTRY_ORIGIN,
66
SEMANTIC_ATTRIBUTE_SENTRY_SAMPLE_RATE,
7+
SEMANTIC_ATTRIBUTE_SENTRY_SDK_INTEGRATIONS,
78
SEMANTIC_ATTRIBUTE_SENTRY_SDK_NAME,
89
SEMANTIC_ATTRIBUTE_SENTRY_SDK_VERSION,
910
SEMANTIC_ATTRIBUTE_SENTRY_SEGMENT_ID,
@@ -207,6 +208,10 @@ sentryTest(
207208
type: 'string',
208209
value: SDK_VERSION,
209210
},
211+
[SEMANTIC_ATTRIBUTE_SENTRY_SDK_INTEGRATIONS]: {
212+
type: 'array',
213+
value: expect.arrayContaining(['SpanStreaming']),
214+
},
210215
[SEMANTIC_ATTRIBUTE_SENTRY_SEGMENT_ID]: {
211216
type: 'string',
212217
value: segmentSpanId,

dev-packages/browser-integration-tests/suites/tracing/browserTracingIntegration/interactions-streamed/test.ts

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@ import {
44
SEMANTIC_ATTRIBUTE_SENTRY_IDLE_SPAN_FINISH_REASON,
55
SEMANTIC_ATTRIBUTE_SENTRY_OP,
66
SEMANTIC_ATTRIBUTE_SENTRY_ORIGIN,
7+
SEMANTIC_ATTRIBUTE_SENTRY_SDK_INTEGRATIONS,
78
SEMANTIC_ATTRIBUTE_SENTRY_SDK_NAME,
89
SEMANTIC_ATTRIBUTE_SENTRY_SDK_VERSION,
910
SEMANTIC_ATTRIBUTE_SENTRY_SEGMENT_ID,
@@ -80,6 +81,10 @@ sentryTest('captures streamed interaction span tree. @firefox', async ({ browser
8081
type: 'string',
8182
value: SDK_VERSION,
8283
},
84+
[SEMANTIC_ATTRIBUTE_SENTRY_SDK_INTEGRATIONS]: {
85+
type: 'array',
86+
value: expect.arrayContaining(['BrowserTracing', 'SpanStreaming']),
87+
},
8388
[SEMANTIC_ATTRIBUTE_SENTRY_SEGMENT_ID]: {
8489
type: 'string',
8590
value: interactionSegmentSpan!.span_id,

dev-packages/browser-integration-tests/suites/tracing/browserTracingIntegration/navigation-streamed/test.ts

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@ import {
44
SEMANTIC_ATTRIBUTE_SENTRY_OP,
55
SEMANTIC_ATTRIBUTE_SENTRY_ORIGIN,
66
SEMANTIC_ATTRIBUTE_SENTRY_SAMPLE_RATE,
7+
SEMANTIC_ATTRIBUTE_SENTRY_SDK_INTEGRATIONS,
78
SEMANTIC_ATTRIBUTE_SENTRY_SOURCE,
89
} from '@sentry/core';
910
import { sentryTest } from '../../../../utils/fixtures';
@@ -131,6 +132,10 @@ sentryTest('starts a streamed navigation span on page navigation', async ({ brow
131132
type: 'string',
132133
value: SDK_VERSION,
133134
},
135+
[SEMANTIC_ATTRIBUTE_SENTRY_SDK_INTEGRATIONS]: {
136+
type: 'array',
137+
value: expect.arrayContaining(['BrowserTracing', 'SpanStreaming']),
138+
},
134139
'sentry.segment.id': {
135140
type: 'string',
136141
value: navigationSpan.span_id,

dev-packages/browser-integration-tests/suites/tracing/browserTracingIntegration/pageload-streamed/test.ts

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@ import {
44
SEMANTIC_ATTRIBUTE_SENTRY_OP,
55
SEMANTIC_ATTRIBUTE_SENTRY_ORIGIN,
66
SEMANTIC_ATTRIBUTE_SENTRY_SAMPLE_RATE,
7+
SEMANTIC_ATTRIBUTE_SENTRY_SDK_INTEGRATIONS,
78
SEMANTIC_ATTRIBUTE_SENTRY_SDK_NAME,
89
SEMANTIC_ATTRIBUTE_SENTRY_SDK_VERSION,
910
SEMANTIC_ATTRIBUTE_SENTRY_SEGMENT_ID,
@@ -138,6 +139,10 @@ sentryTest(
138139
type: 'string',
139140
value: SDK_VERSION,
140141
},
142+
[SEMANTIC_ATTRIBUTE_SENTRY_SDK_INTEGRATIONS]: {
143+
type: 'array',
144+
value: expect.arrayContaining(['BrowserTracing', 'SpanStreaming']),
145+
},
141146
[SEMANTIC_ATTRIBUTE_SENTRY_SEGMENT_ID]: {
142147
type: 'string',
143148
value: pageloadSpan?.span_id,

dev-packages/cloudflare-integration-tests/suites/public-api/startSpan-streamed/test.ts

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,13 +2,14 @@ import type { Envelope, SerializedStreamedSpanContainer } from '@sentry/core';
22
import {
33
SDK_VERSION,
44
SEMANTIC_ATTRIBUTE_SENTRY_OP,
5+
SEMANTIC_ATTRIBUTE_SENTRY_ORIGIN,
56
SEMANTIC_ATTRIBUTE_SENTRY_RELEASE,
7+
SEMANTIC_ATTRIBUTE_SENTRY_SAMPLE_RATE,
8+
SEMANTIC_ATTRIBUTE_SENTRY_SDK_INTEGRATIONS,
69
SEMANTIC_ATTRIBUTE_SENTRY_SDK_NAME,
710
SEMANTIC_ATTRIBUTE_SENTRY_SDK_VERSION,
811
SEMANTIC_ATTRIBUTE_SENTRY_SEGMENT_ID,
912
SEMANTIC_ATTRIBUTE_SENTRY_SEGMENT_NAME,
10-
SEMANTIC_ATTRIBUTE_SENTRY_ORIGIN,
11-
SEMANTIC_ATTRIBUTE_SENTRY_SAMPLE_RATE,
1213
SEMANTIC_ATTRIBUTE_SENTRY_SOURCE,
1314
} from '@sentry/core';
1415
import { expect, it } from 'vitest';
@@ -175,6 +176,7 @@ it('sends a streamed span envelope with correct spans for a manually started spa
175176
attributes: {
176177
[SEMANTIC_ATTRIBUTE_SENTRY_SDK_NAME]: { type: 'string', value: CLOUDFLARE_SDK },
177178
[SEMANTIC_ATTRIBUTE_SENTRY_SDK_VERSION]: { type: 'string', value: SDK_VERSION },
179+
[SEMANTIC_ATTRIBUTE_SENTRY_SDK_INTEGRATIONS]: { type: 'array', value: expect.arrayContaining(['SpanStreaming']) },
178180
[SEMANTIC_ATTRIBUTE_SENTRY_RELEASE]: { type: 'string', value: '1.0.0' },
179181
[SEMANTIC_ATTRIBUTE_SENTRY_ORIGIN]: { type: 'string', value: 'auto.http.cloudflare' },
180182
[SEMANTIC_ATTRIBUTE_SENTRY_SEGMENT_ID]: { type: 'string', value: segmentSpanId },

dev-packages/e2e-tests/test-applications/deno-streamed/tests/spans.test.ts

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -75,6 +75,10 @@ const SEGMENT_SPAN = {
7575
type: 'string',
7676
value: expect.any(String),
7777
},
78+
'sentry.sdk.integrations': {
79+
type: 'array',
80+
value: expect.arrayContaining(['SpanStreaming']),
81+
},
7882
'sentry.segment.id': {
7983
type: 'string',
8084
value: expect.stringMatching(/^[\da-f]{16}$/),

dev-packages/node-integration-tests/suites/public-api/startSpan/basic-usage-streamed/test.ts

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@ import {
33
SEMANTIC_ATTRIBUTE_SENTRY_OP,
44
SEMANTIC_ATTRIBUTE_SENTRY_RELEASE,
55
SEMANTIC_ATTRIBUTE_SENTRY_SAMPLE_RATE,
6+
SEMANTIC_ATTRIBUTE_SENTRY_SDK_INTEGRATIONS,
67
SEMANTIC_ATTRIBUTE_SENTRY_SDK_NAME,
78
SEMANTIC_ATTRIBUTE_SENTRY_SDK_VERSION,
89
SEMANTIC_ATTRIBUTE_SENTRY_SEGMENT_ID,
@@ -129,6 +130,7 @@ test('sends a streamed span envelope with correct spans for a manually started s
129130
[SEMANTIC_ATTRIBUTE_SENTRY_SAMPLE_RATE]: { type: 'integer', value: 1 },
130131
[SEMANTIC_ATTRIBUTE_SENTRY_SDK_NAME]: { type: 'string', value: 'sentry.javascript.node' },
131132
[SEMANTIC_ATTRIBUTE_SENTRY_SDK_VERSION]: { type: 'string', value: SDK_VERSION },
133+
[SEMANTIC_ATTRIBUTE_SENTRY_SDK_INTEGRATIONS]: { type: 'array', value: expect.arrayContaining(['SpanStreaming']) },
132134
[SEMANTIC_ATTRIBUTE_SENTRY_SEGMENT_ID]: { type: 'string', value: segmentSpanId },
133135
[SEMANTIC_ATTRIBUTE_SENTRY_SEGMENT_NAME]: { type: 'string', value: 'test-span' },
134136
[SEMANTIC_ATTRIBUTE_SENTRY_RELEASE]: { type: 'string', value: '1.0.0' },

packages/browser/test/integrations/spanstreaming.test.ts

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
import * as SentryCore from '@sentry/core';
2-
import { debug } from '@sentry/core';
2+
import { debug, SEMANTIC_ATTRIBUTE_SENTRY_SDK_INTEGRATIONS } from '@sentry/core';
33
import { beforeEach, describe, expect, it, vi } from 'vitest';
44
import { BrowserClient, spanStreamingIntegration } from '../../src';
55
import { getDefaultBrowserClientOptions } from '../helper/browser-client-options';
@@ -145,6 +145,10 @@ describe('spanStreamingIntegration', () => {
145145
type: 'string',
146146
value: expect.any(String),
147147
},
148+
[SEMANTIC_ATTRIBUTE_SENTRY_SDK_INTEGRATIONS]: {
149+
type: 'array',
150+
value: ['SpanStreaming'],
151+
},
148152
'sentry.segment.id': {
149153
type: 'string',
150154
value: span.spanContext().spanId,

0 commit comments

Comments
 (0)