@@ -75,7 +75,7 @@ describe('SentryBrowser', () => {
75
75
describe ( 'showReportDialog' , ( ) => {
76
76
describe ( 'user' , ( ) => {
77
77
const EX_USER = { email :
'[email protected] ' } ;
78
- const client = new BrowserClient ( { dsn } ) ;
78
+ const client = new BrowserClient ( { dsn } , new SimpleTransport ( { dsn } ) ) ;
79
79
const reportDialogSpy = jest . spyOn ( client , 'showReportDialog' ) ;
80
80
81
81
beforeEach ( ( ) => {
@@ -140,42 +140,51 @@ describe('SentryBrowser', () => {
140
140
141
141
it ( 'should capture a message' , done => {
142
142
getCurrentHub ( ) . bindClient (
143
- new BrowserClient ( {
144
- beforeSend : ( event : Event ) : Event | null => {
145
- expect ( event . message ) . toBe ( 'test' ) ;
146
- expect ( event . exception ) . toBeUndefined ( ) ;
147
- done ( ) ;
148
- return event ;
143
+ new BrowserClient (
144
+ {
145
+ beforeSend : ( event : Event ) : Event | null => {
146
+ expect ( event . message ) . toBe ( 'test' ) ;
147
+ expect ( event . exception ) . toBeUndefined ( ) ;
148
+ done ( ) ;
149
+ return event ;
150
+ } ,
151
+ dsn,
149
152
} ,
150
- dsn,
151
- } ) ,
153
+ new SimpleTransport ( { dsn } ) ,
154
+ ) ,
152
155
) ;
153
156
captureMessage ( 'test' ) ;
154
157
} ) ;
155
158
156
159
it ( 'should capture an event' , done => {
157
160
getCurrentHub ( ) . bindClient (
158
- new BrowserClient ( {
159
- beforeSend : ( event : Event ) : Event | null => {
160
- expect ( event . message ) . toBe ( 'event' ) ;
161
- expect ( event . exception ) . toBeUndefined ( ) ;
162
- done ( ) ;
163
- return event ;
161
+ new BrowserClient (
162
+ {
163
+ beforeSend : ( event : Event ) : Event | null => {
164
+ expect ( event . message ) . toBe ( 'event' ) ;
165
+ expect ( event . exception ) . toBeUndefined ( ) ;
166
+ done ( ) ;
167
+ return event ;
168
+ } ,
169
+ dsn,
164
170
} ,
165
- dsn,
166
- } ) ,
171
+ new SimpleTransport ( { dsn } ) ,
172
+ ) ,
167
173
) ;
168
174
captureEvent ( { message : 'event' } ) ;
169
175
} ) ;
170
176
171
177
it ( 'should not dedupe an event on bound client' , async ( ) => {
172
178
const localBeforeSend = jest . fn ( ) ;
173
179
getCurrentHub ( ) . bindClient (
174
- new BrowserClient ( {
175
- beforeSend : localBeforeSend ,
176
- dsn,
177
- integrations : [ ] ,
178
- } ) ,
180
+ new BrowserClient (
181
+ {
182
+ beforeSend : localBeforeSend ,
183
+ dsn,
184
+ integrations : [ ] ,
185
+ } ,
186
+ new SimpleTransport ( { dsn } ) ,
187
+ ) ,
179
188
) ;
180
189
181
190
captureMessage ( 'event222' ) ;
@@ -189,11 +198,14 @@ describe('SentryBrowser', () => {
189
198
it ( 'should use inboundfilter rules of bound client' , async ( ) => {
190
199
const localBeforeSend = jest . fn ( ) ;
191
200
getCurrentHub ( ) . bindClient (
192
- new BrowserClient ( {
193
- beforeSend : localBeforeSend ,
194
- dsn,
195
- integrations : [ new Integrations . InboundFilters ( { ignoreErrors : [ 'capture' ] } ) ] ,
196
- } ) ,
201
+ new BrowserClient (
202
+ {
203
+ beforeSend : localBeforeSend ,
204
+ dsn,
205
+ integrations : [ new Integrations . InboundFilters ( { ignoreErrors : [ 'capture' ] } ) ] ,
206
+ } ,
207
+ new SimpleTransport ( { dsn } ) ,
208
+ ) ,
197
209
) ;
198
210
199
211
captureMessage ( 'capture' ) ;
@@ -246,18 +258,22 @@ describe('SentryBrowser initialization', () => {
246
258
it ( 'should set SDK data when Sentry.init() is called' , ( ) => {
247
259
init ( { dsn } ) ;
248
260
249
- const sdkData = ( getCurrentHub ( ) . getClient ( ) as any ) . getTransport ( ) . _api . metadata ?. sdk ;
261
+ // TODO(v7): Check if this is the correct way to go here
262
+ // const sdkData = (getCurrentHub().getClient() as any).getTransport()._api.metadata?.sdk;
263
+ const sdkData : any = getCurrentHub ( ) . getClient ( ) ?. getOptions ( ) . _metadata ?. sdk ! ;
250
264
251
- expect ( sdkData . name ) . toBe ( 'sentry.javascript.browser' ) ;
252
- expect ( sdkData . packages [ 0 ] . name ) . toBe ( 'npm:@sentry/browser' ) ;
253
- expect ( sdkData . packages [ 0 ] . version ) . toBe ( SDK_VERSION ) ;
254
- expect ( sdkData . version ) . toBe ( SDK_VERSION ) ;
265
+ expect ( sdkData ? .name ) . toBe ( 'sentry.javascript.browser' ) ;
266
+ expect ( sdkData ? .packages [ 0 ] . name ) . toBe ( 'npm:@sentry/browser' ) ;
267
+ expect ( sdkData ? .packages [ 0 ] . version ) . toBe ( SDK_VERSION ) ;
268
+ expect ( sdkData ? .version ) . toBe ( SDK_VERSION ) ;
255
269
} ) ;
256
270
257
271
it ( 'should set SDK data when instantiating a client directly' , ( ) => {
258
- const client = new BrowserClient ( { dsn } ) ;
272
+ const client = new BrowserClient ( { dsn } , new SimpleTransport ( { dsn } ) ) ;
259
273
260
- const sdkData = ( client as any ) . getTransport ( ) . _api . metadata ?. sdk ;
274
+ // TODO(v7): Check if this is the correct way to go here
275
+ // const sdkData = (getCurrentHub().getClient() as any).getTransport()._api.metadata?.sdk;
276
+ const sdkData = ( client as any ) . getOptions ( ) . _metadata ?. sdk ;
261
277
262
278
expect ( sdkData . name ) . toBe ( 'sentry.javascript.browser' ) ;
263
279
expect ( sdkData . packages [ 0 ] . name ) . toBe ( 'npm:@sentry/browser' ) ;
@@ -298,15 +314,18 @@ describe('SentryBrowser initialization', () => {
298
314
describe ( 'wrap()' , ( ) => {
299
315
it ( 'should wrap and call function while capturing error' , done => {
300
316
getCurrentHub ( ) . bindClient (
301
- new BrowserClient ( {
302
- beforeSend : ( event : Event ) : Event | null => {
303
- expect ( event . exception ! . values ! [ 0 ] . type ) . toBe ( 'TypeError' ) ;
304
- expect ( event . exception ! . values ! [ 0 ] . value ) . toBe ( 'mkey' ) ;
305
- done ( ) ;
306
- return null ;
317
+ new BrowserClient (
318
+ {
319
+ beforeSend : ( event : Event ) : Event | null => {
320
+ expect ( event . exception ! . values ! [ 0 ] . type ) . toBe ( 'TypeError' ) ;
321
+ expect ( event . exception ! . values ! [ 0 ] . value ) . toBe ( 'mkey' ) ;
322
+ done ( ) ;
323
+ return null ;
324
+ } ,
325
+ dsn,
307
326
} ,
308
- dsn,
309
- } ) ,
327
+ new SimpleTransport ( { dsn } ) ,
328
+ ) ,
310
329
) ;
311
330
312
331
try {
0 commit comments