@@ -20,6 +20,7 @@ beforeAll(() => {
20
20
global . Request = { } ;
21
21
} ) ;
22
22
23
+ const hasTracingEnabled = jest . spyOn ( tracingUtils , 'hasTracingEnabled' ) ;
23
24
const addInstrumentationHandler = jest . spyOn ( utils , 'addInstrumentationHandler' ) ;
24
25
const setRequestHeader = jest . fn ( ) ;
25
26
@@ -108,6 +109,30 @@ describe('callbacks', () => {
108
109
expect ( spans ) . toEqual ( { } ) ;
109
110
} ) ;
110
111
112
+ it ( 'does not add fetch request spans if tracing is disabled' , ( ) => {
113
+ hasTracingEnabled . mockReturnValueOnce ( false ) ;
114
+ const spans = { } ;
115
+
116
+ fetchCallback ( fetchHandlerData , alwaysCreateSpan , spans ) ;
117
+ expect ( spans ) . toEqual ( { } ) ;
118
+ } ) ;
119
+
120
+ it ( 'does not add fetch request headers if tracing is disabled' , ( ) => {
121
+ hasTracingEnabled . mockReturnValueOnce ( false ) ;
122
+
123
+ // make a local copy so the global one doesn't get mutated
124
+ const handlerData : FetchData = {
125
+ args : [ 'http://dogs.are.great/' , { } ] ,
126
+ fetchData : { url : 'http://dogs.are.great/' , method : 'GET' } ,
127
+ startTimestamp : 1353501072000 ,
128
+ } ;
129
+
130
+ fetchCallback ( handlerData , alwaysCreateSpan , { } ) ;
131
+
132
+ const headers = ( handlerData . args [ 1 ] . headers as Record < string , string > ) || { } ;
133
+ expect ( headers [ 'sentry-trace' ] ) . not . toBeDefined ( ) ;
134
+ } ) ;
135
+
111
136
it ( 'creates and finishes fetch span on active transaction' , ( ) => {
112
137
const spans = { } ;
113
138
@@ -174,6 +199,22 @@ describe('callbacks', () => {
174
199
expect ( spans ) . toEqual ( { } ) ;
175
200
} ) ;
176
201
202
+ it ( 'does not add xhr request spans if tracing is disabled' , ( ) => {
203
+ hasTracingEnabled . mockReturnValueOnce ( false ) ;
204
+ const spans = { } ;
205
+
206
+ xhrCallback ( xhrHandlerData , alwaysCreateSpan , spans ) ;
207
+ expect ( spans ) . toEqual ( { } ) ;
208
+ } ) ;
209
+
210
+ it ( 'does not add xhr request headers if tracing is disabled' , ( ) => {
211
+ hasTracingEnabled . mockReturnValueOnce ( false ) ;
212
+
213
+ xhrCallback ( xhrHandlerData , alwaysCreateSpan , { } ) ;
214
+
215
+ expect ( setRequestHeader ) . not . toHaveBeenCalled ( ) ;
216
+ } ) ;
217
+
177
218
it ( 'adds sentry-trace header to XHR requests' , ( ) => {
178
219
xhrCallback ( xhrHandlerData , alwaysCreateSpan , { } ) ;
179
220
0 commit comments