'))).toBe(true)
@@ -153,10 +142,6 @@ describe('hasChildNode', () => {
describe('forEachChildNodes', () => {
it('should iterate over the direct children for a normal node', () => {
- if (isIE()) {
- pending('IE not supported')
- }
-
const container = appendElement(`
toto
`)
@@ -167,10 +152,6 @@ describe('forEachChildNodes', () => {
})
it('should iterate over the the shadow root for a node that is a host', () => {
- if (isIE()) {
- pending('IE not supported')
- }
-
const container = appendElement('')
const shadowRoot = container.attachShadow({ mode: 'open' })
@@ -181,10 +162,6 @@ describe('forEachChildNodes', () => {
})
it('should iterate over the the shadow root and direct children for a node that is a host', () => {
- if (isIE()) {
- pending('IE not supported')
- }
-
const container = appendElement('
')
const shadowRoot = container.attachShadow({ mode: 'open' })
@@ -196,25 +173,23 @@ describe('forEachChildNodes', () => {
})
})
-if (!isIE()) {
- describe('getParentNode', () => {
- const orphanDiv = document.createElement('div')
- const parentWithShadowRoot = document.createElement('div')
- const shadowRoot = parentWithShadowRoot.attachShadow({ mode: 'open' })
-
- const parentWithoutShadowRoot = document.createElement('div')
- const child = document.createElement('span')
- parentWithoutShadowRoot.appendChild(child)
-
- const parameters: Array<[string, Node, Node | null]> = [
- ['return null if without parent', orphanDiv, null],
- ['return the host for a shadow root', shadowRoot, parentWithShadowRoot],
- ['return the parent for normal child', child, parentWithoutShadowRoot],
- ]
- parameters.forEach(([label, element, result]) => {
- it(`should ${label}`, () => {
- expect(getParentNode(element)).toBe(result)
- })
+describe('getParentNode', () => {
+ const orphanDiv = document.createElement('div')
+ const parentWithShadowRoot = document.createElement('div')
+ const shadowRoot = parentWithShadowRoot.attachShadow({ mode: 'open' })
+
+ const parentWithoutShadowRoot = document.createElement('div')
+ const child = document.createElement('span')
+ parentWithoutShadowRoot.appendChild(child)
+
+ const parameters: Array<[string, Node, Node | null]> = [
+ ['return null if without parent', orphanDiv, null],
+ ['return the host for a shadow root', shadowRoot, parentWithShadowRoot],
+ ['return the parent for normal child', child, parentWithoutShadowRoot],
+ ]
+ parameters.forEach(([label, element, result]) => {
+ it(`should ${label}`, () => {
+ expect(getParentNode(element)).toBe(result)
})
})
-}
+})
diff --git a/packages/rum-core/src/browser/scroll.spec.ts b/packages/rum-core/src/browser/scroll.spec.ts
index 3a69cd5c3d..d0272abc63 100644
--- a/packages/rum-core/src/browser/scroll.spec.ts
+++ b/packages/rum-core/src/browser/scroll.spec.ts
@@ -1,4 +1,4 @@
-import { addEventListener, DOM_EVENT, isIE } from '@datadog/browser-core'
+import { addEventListener, DOM_EVENT } from '@datadog/browser-core'
import type { RumConfiguration } from '../domain/configuration'
import { getScrollX, getScrollY } from './scroll'
@@ -10,17 +10,11 @@ describe('scroll', () => {
}
beforeEach(() => {
- if (isIE()) {
- pending('IE not supported')
- }
configuration = {} as RumConfiguration
shouldWaitForWindowScrollEvent = false
})
afterEach((done) => {
- if (isIE()) {
- return done()
- }
document.body.style.removeProperty('margin-bottom')
window.scrollTo(0, 0)
diff --git a/packages/rum-core/src/domain/privacy.spec.ts b/packages/rum-core/src/domain/privacy.spec.ts
index 2155388cf5..c7bb886571 100644
--- a/packages/rum-core/src/domain/privacy.spec.ts
+++ b/packages/rum-core/src/domain/privacy.spec.ts
@@ -1,4 +1,3 @@
-import { isIE } from '@datadog/browser-core'
import {
NodePrivacyLevel,
PRIVACY_ATTR_NAME,
@@ -12,12 +11,6 @@ import {
} from './privacy'
describe('getNodePrivacyLevel', () => {
- beforeEach(() => {
- if (isIE()) {
- pending('IE not supported')
- }
- })
-
it('returns the element privacy mode if it has one', () => {
const node = document.createElement('div')
node.setAttribute(PRIVACY_ATTR_NAME, PRIVACY_ATTR_VALUE_MASK)
@@ -127,11 +120,6 @@ describe('getNodePrivacyLevel', () => {
})
describe('getNodeSelfPrivacyLevel', () => {
- beforeEach(() => {
- if (isIE()) {
- pending('IE not supported')
- }
- })
;[
{
msg: 'is not an element',
diff --git a/packages/rum-core/src/domain/requestCollection.spec.ts b/packages/rum-core/src/domain/requestCollection.spec.ts
index 27a8da52fe..ff280b13d6 100644
--- a/packages/rum-core/src/domain/requestCollection.spec.ts
+++ b/packages/rum-core/src/domain/requestCollection.spec.ts
@@ -1,5 +1,5 @@
import type { Payload } from '@datadog/browser-core'
-import { isIE, RequestType } from '@datadog/browser-core'
+import { RequestType } from '@datadog/browser-core'
import type { MockFetch, MockFetchManager, MockXhrManager } from '@datadog/browser-core/test'
import { registerCleanupTask, SPEC_ENDPOINTS, mockFetch, mockXhr, withXhr } from '@datadog/browser-core/test'
import type { RumConfiguration } from './configuration'
@@ -22,9 +22,6 @@ describe('collect fetch', () => {
let stopFetchTracking: () => void
beforeEach(() => {
- if (isIE()) {
- pending('no fetch support')
- }
configuration = {
...validateAndBuildRumConfiguration({ clientToken: 'xxx', applicationId: 'xxx' })!,
...SPEC_ENDPOINTS,
@@ -197,9 +194,6 @@ describe('collect xhr', () => {
let stopXhrTracking: () => void
beforeEach(() => {
- if (isIE()) {
- pending('no fetch support')
- }
configuration = {
...validateAndBuildRumConfiguration({ clientToken: 'xxx', applicationId: 'xxx' })!,
...SPEC_ENDPOINTS,
diff --git a/packages/rum-core/src/domain/resource/matchRequestTiming.spec.ts b/packages/rum-core/src/domain/resource/matchRequestTiming.spec.ts
index 733f538924..135158d001 100644
--- a/packages/rum-core/src/domain/resource/matchRequestTiming.spec.ts
+++ b/packages/rum-core/src/domain/resource/matchRequestTiming.spec.ts
@@ -1,5 +1,5 @@
import type { Duration, RelativeTime } from '@datadog/browser-core'
-import { ExperimentalFeature, isIE, relativeToClocks } from '@datadog/browser-core'
+import { ExperimentalFeature, relativeToClocks } from '@datadog/browser-core'
import { mockExperimentalFeatures } from '@datadog/browser-core/test'
import { createPerformanceEntry } from '../../../test'
import type { RumPerformanceResourceTiming } from '../../browser/performanceObservable'
@@ -16,9 +16,6 @@ describe('matchRequestTiming', () => {
let entries: RumPerformanceResourceTiming[]
beforeEach(() => {
- if (isIE()) {
- pending('no full rum support')
- }
entries = []
spyOn(performance, 'getEntriesByName').and.returnValue(entries)
})
diff --git a/packages/rum-core/src/domain/resource/resourceCollection.spec.ts b/packages/rum-core/src/domain/resource/resourceCollection.spec.ts
index 2d658c0763..6edea7528c 100644
--- a/packages/rum-core/src/domain/resource/resourceCollection.spec.ts
+++ b/packages/rum-core/src/domain/resource/resourceCollection.spec.ts
@@ -1,5 +1,5 @@
import type { Duration, RelativeTime, ServerDuration, TimeStamp } from '@datadog/browser-core'
-import { isIE, RequestType, ResourceType } from '@datadog/browser-core'
+import { RequestType, ResourceType } from '@datadog/browser-core'
import type { RumFetchResourceEventDomainContext, RumXhrResourceEventDomainContext } from '../../domainContext.types'
import { setup, createPerformanceEntry, mockPerformanceObserver } from '../../../test'
import type { TestSetupBuilder } from '../../../test'
@@ -188,9 +188,6 @@ describe('resourceCollection', () => {
})
it('should create resource from completed fetch request', () => {
- if (isIE()) {
- pending('No IE support')
- }
const { lifeCycle, rawRumEvents } = build()
const response = new Response()
lifeCycle.notify(
@@ -240,9 +237,6 @@ describe('resourceCollection', () => {
it(`should support ${
typeof input === 'object' ? JSON.stringify(input) : String(input)
} as fetch input parameter`, () => {
- if (isIE()) {
- pending('No IE support')
- }
const { lifeCycle, rawRumEvents } = build()
lifeCycle.notify(
LifeCycleEventType.REQUEST_COMPLETED,
@@ -395,10 +389,6 @@ describe('resourceCollection', () => {
})
it('should collect handlingStack from completed fetch request', () => {
- if (isIE()) {
- pending('No IE support')
- }
-
const { lifeCycle, rawRumEvents } = build()
const response = new Response()
lifeCycle.notify(LifeCycleEventType.REQUEST_COMPLETED, createCompletedRequest({ response }))
diff --git a/packages/rum-core/src/domain/rumSessionManager.spec.ts b/packages/rum-core/src/domain/rumSessionManager.spec.ts
index 73e533f44b..96cf8e3ee5 100644
--- a/packages/rum-core/src/domain/rumSessionManager.spec.ts
+++ b/packages/rum-core/src/domain/rumSessionManager.spec.ts
@@ -3,7 +3,6 @@ import {
STORAGE_POLL_DELAY,
SESSION_STORE_KEY,
getCookie,
- isIE,
setCookie,
stopSessionManager,
ONE_SECOND,
@@ -40,9 +39,6 @@ describe('rum session manager', () => {
let clock: Clock
beforeEach(() => {
- if (isIE()) {
- pending('no full rum support')
- }
clock = mockClock()
expireSessionSpy = jasmine.createSpy('expireSessionSpy')
renewSessionSpy = jasmine.createSpy('renewSessionSpy')
diff --git a/packages/rum-core/src/domain/tracing/tracer.spec.ts b/packages/rum-core/src/domain/tracing/tracer.spec.ts
index eff44929d8..0953a59db4 100644
--- a/packages/rum-core/src/domain/tracing/tracer.spec.ts
+++ b/packages/rum-core/src/domain/tracing/tracer.spec.ts
@@ -1,4 +1,4 @@
-import { display, isIE, objectEntries, TraceContextInjection } from '@datadog/browser-core'
+import { display, objectEntries, TraceContextInjection } from '@datadog/browser-core'
import type { RumSessionManagerMock } from '../../../test'
import { createRumSessionManagerMock } from '../../../test'
import type { RumFetchResolveContext, RumFetchStartContext, RumXhrStartContext } from '../requestCollection'
@@ -288,12 +288,6 @@ describe('tracer', () => {
})
describe('traceFetch', () => {
- beforeEach(() => {
- if (isIE()) {
- pending('no fetch support')
- }
- })
-
it('should add traceId and spanId to context, and add tracing headers', () => {
const context: Partial = { ...ALLOWED_DOMAIN_CONTEXT }
const tracer = startTracer(configuration, sessionManager)
diff --git a/packages/rum-core/src/domain/view/viewMetrics/trackScrollMetrics.spec.ts b/packages/rum-core/src/domain/view/viewMetrics/trackScrollMetrics.spec.ts
index 06755cee7b..a247efc908 100644
--- a/packages/rum-core/src/domain/view/viewMetrics/trackScrollMetrics.spec.ts
+++ b/packages/rum-core/src/domain/view/viewMetrics/trackScrollMetrics.spec.ts
@@ -1,5 +1,5 @@
import type { Duration, RelativeTime, Subscription, TimeStamp } from '@datadog/browser-core'
-import { DOM_EVENT, Observable, isIE } from '@datadog/browser-core'
+import { DOM_EVENT, Observable } from '@datadog/browser-core'
import type { Clock } from '@datadog/browser-core/test'
import { createNewEvent, mockClock, registerCleanupTask } from '@datadog/browser-core/test'
import type { RumConfiguration } from '../../configuration'
@@ -22,10 +22,6 @@ describe('createScrollValuesObserver', () => {
}
beforeEach(() => {
- if (isIE()) {
- pending('IE not supported')
- }
-
registerCleanupTask(() => {
subscription.unsubscribe()
document.body.innerHTML = ''
diff --git a/packages/rum/BROWSER_SUPPORT.md b/packages/rum/BROWSER_SUPPORT.md
index bee0786ae7..b16d7b417c 100644
--- a/packages/rum/BROWSER_SUPPORT.md
+++ b/packages/rum/BROWSER_SUPPORT.md
@@ -1,25 +1,25 @@
# Browser Support
-| Feature | Chrome | Firefox | Safari | Edge | Chrome Android | Safari iOS | IE11 | < IE11 | Opera |
-| ----------------- | ------ | ------- | ------ | ---- | -------------- | ---------- | ----- | ------ | ----- |
-| loading | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ❌ | ✅ |
-| init | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ❌ | ✅ |
-| rum request | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ❌ | ✅ |
-| flush on hide | ✅ | ✅ | ✅ | ✅ | ✅ | ❌ | ❌ | ❌ | ✅ |
-| console error | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ❌ | ✅ |
-| runtime error | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ❌ | ✅ |
-| CSP violation | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ❌ | ❌ | ✅ |
-| intervention | ✅ | ❌ | ❌ | ✅ | ✅ | ❌ | ❌ | ❌ | ✅ |
-| auto action | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ❌ | ✅ |
-| custom action | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ❌ | ✅ |
-| long task | ✅ | ❌ | ❌ | ✅ | ✅ | ❌ | ❌ | ❌ | ✅ |
-| tracing | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ❌ | ✅ |
-| route change | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ❌ | ✅ |
-| loading time | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ❌ | ✅ |
-| resource timing | ✅ | ✅ | ⚠️(2) | ✅ | ✅ | ⚠️(2) | ⚠️(3) | ❌ | ✅ |
-| navigation timing | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ❌ | ✅ |
-| web vitals | ✅ | ⚠️(1) | ⚠️(1) | ✅ | ✅ | ⚠️(1) | ❌ | ❌ | ✅ |
-| FCP | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ❌ | ❌ | ✅ |
+| Feature | Chrome | Firefox | Safari | Edge | Chrome Android | Safari iOS | IE | Opera |
+| ----------------- | ------ | ------- | ------ | ---- | -------------- | ---------- | --- | ----- |
+| loading | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ❌ | ✅ |
+| init | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ❌ | ✅ |
+| rum request | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ❌ | ✅ |
+| flush on hide | ✅ | ✅ | ✅ | ✅ | ✅ | ❌ | ❌ | ✅ |
+| console error | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ❌ | ✅ |
+| runtime error | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ❌ | ✅ |
+| CSP violation | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ❌ | ✅ |
+| intervention | ✅ | ❌ | ❌ | ✅ | ✅ | ❌ | ❌ | ✅ |
+| auto action | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ❌ | ✅ |
+| custom action | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ❌ | ✅ |
+| long task | ✅ | ❌ | ❌ | ✅ | ✅ | ❌ | ❌ | ✅ |
+| tracing | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ❌ | ✅ |
+| route change | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ❌ | ✅ |
+| loading time | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ❌ | ✅ |
+| resource timing | ✅ | ✅ | ⚠️(2) | ✅ | ✅ | ⚠️(2) | ❌ | ✅ |
+| navigation timing | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ❌ | ✅ |
+| web vitals | ✅ | ⚠️(1) | ⚠️(1) | ✅ | ✅ | ⚠️(1) | ❌ | ✅ |
+| FCP | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ❌ | ✅ |
1. FID only
2. size information not available
diff --git a/packages/rum/src/boot/recorderApi.spec.ts b/packages/rum/src/boot/recorderApi.spec.ts
index 1cc63f0610..09ecba102e 100644
--- a/packages/rum/src/boot/recorderApi.spec.ts
+++ b/packages/rum/src/boot/recorderApi.spec.ts
@@ -1,5 +1,5 @@
import type { DeflateEncoder, DeflateWorker, DeflateWorkerAction } from '@datadog/browser-core'
-import { BridgeCapability, PageExitReason, display, isIE } from '@datadog/browser-core'
+import { BridgeCapability, PageExitReason, display } from '@datadog/browser-core'
import type { RecorderApi, ViewContexts, LifeCycle, RumConfiguration } from '@datadog/browser-rum-core'
import { LifeCycleEventType } from '@datadog/browser-rum-core'
import { mockEventBridge, createNewEvent, registerCleanupTask } from '@datadog/browser-core/test'
@@ -24,9 +24,6 @@ describe('makeRecorderApi', () => {
let startSessionReplayRecordingManually: boolean
beforeEach(() => {
- if (isIE()) {
- pending('IE not supported')
- }
startSessionReplayRecordingManually = false
mockWorker = new MockWorker()
diff --git a/packages/rum/src/boot/startRecording.spec.ts b/packages/rum/src/boot/startRecording.spec.ts
index 53f48487a0..9404168f3d 100644
--- a/packages/rum/src/boot/startRecording.spec.ts
+++ b/packages/rum/src/boot/startRecording.spec.ts
@@ -1,5 +1,5 @@
import type { TimeStamp, HttpRequest } from '@datadog/browser-core'
-import { PageExitReason, DefaultPrivacyLevel, noop, isIE, DeflateEncoderStreamId } from '@datadog/browser-core'
+import { PageExitReason, DefaultPrivacyLevel, noop, DeflateEncoderStreamId } from '@datadog/browser-core'
import type { LifeCycle, ViewCreatedEvent, RumConfiguration } from '@datadog/browser-rum-core'
import { LifeCycleEventType, startViewContexts } from '@datadog/browser-rum-core'
import type { Clock } from '@datadog/browser-core/test'
@@ -29,9 +29,6 @@ describe('startRecording', () => {
let configuration: RumConfiguration
beforeEach(() => {
- if (isIE()) {
- pending('IE not supported')
- }
configuration = {} as RumConfiguration
resetReplayStats()
sessionManager = createRumSessionManagerMock()
diff --git a/packages/rum/src/domain/deflate/deflateWorker.spec.ts b/packages/rum/src/domain/deflate/deflateWorker.spec.ts
index 180531e638..5afe93726b 100644
--- a/packages/rum/src/domain/deflate/deflateWorker.spec.ts
+++ b/packages/rum/src/domain/deflate/deflateWorker.spec.ts
@@ -1,5 +1,5 @@
import type { RawTelemetryEvent } from '@datadog/browser-core'
-import { display, isIE, resetTelemetry, startFakeTelemetry } from '@datadog/browser-core'
+import { display, resetTelemetry, startFakeTelemetry } from '@datadog/browser-core'
import type { RumConfiguration } from '@datadog/browser-rum-core'
import type { Clock } from '@datadog/browser-core/test'
import { mockClock, registerCleanupTask } from '@datadog/browser-core/test'
@@ -75,9 +75,6 @@ describe('startDeflateWorker', () => {
let displaySpy: jasmine.Spy
beforeEach(() => {
- if (isIE()) {
- pending('IE does not support CSP blocking worker creation')
- }
displaySpy = spyOn(display, 'error')
telemetryEvents = startFakeTelemetry()
CSP_ERROR = new DOMException(
diff --git a/packages/rum/src/domain/getSessionReplayLink.spec.ts b/packages/rum/src/domain/getSessionReplayLink.spec.ts
index e4a8351e72..9229881bd7 100644
--- a/packages/rum/src/domain/getSessionReplayLink.spec.ts
+++ b/packages/rum/src/domain/getSessionReplayLink.spec.ts
@@ -1,5 +1,5 @@
-import { isIE } from '@datadog/browser-core'
import type { RumConfiguration, ViewContexts } from '@datadog/browser-rum-core'
+import { registerCleanupTask } from '@datadog/browser-core/test'
import { createRumSessionManagerMock } from '../../../rum-core/test'
import { getSessionReplayLink } from './getSessionReplayLink'
import { addRecord, resetReplayStats } from './replayStats'
@@ -18,11 +18,7 @@ describe('getReplayLink', () => {
const link = getSessionReplayLink(DEFAULT_CONFIGURATION, sessionManager, viewContexts, true)
- expect(link).toBe(
- isIE()
- ? 'https://dd.datad0g.com/rum/replay/sessions/session-id-1?error-type=browser-not-supported'
- : 'https://dd.datad0g.com/rum/replay/sessions/session-id-1?'
- )
+ expect(link).toBe('https://dd.datad0g.com/rum/replay/sessions/session-id-1?')
})
it('should return the replay link', () => {
@@ -44,11 +40,7 @@ describe('getReplayLink', () => {
true
)
- expect(link).toBe(
- isIE()
- ? 'https://toto.datadoghq.com/rum/replay/sessions/session-id-1?error-type=browser-not-supported&seed=view-id-1&from=123456'
- : 'https://toto.datadoghq.com/rum/replay/sessions/session-id-1?seed=view-id-1&from=123456'
- )
+ expect(link).toBe('https://toto.datadoghq.com/rum/replay/sessions/session-id-1?seed=view-id-1&from=123456')
})
it('should return link when replay is forced', () => {
@@ -74,11 +66,7 @@ describe('getReplayLink', () => {
true
)
- expect(link).toBe(
- isIE()
- ? 'https://toto.datadoghq.com/rum/replay/sessions/session-id-1?error-type=browser-not-supported&seed=view-id-1&from=123456'
- : 'https://toto.datadoghq.com/rum/replay/sessions/session-id-1?seed=view-id-1&from=123456'
- )
+ expect(link).toBe('https://toto.datadoghq.com/rum/replay/sessions/session-id-1?seed=view-id-1&from=123456')
})
it('return a param if replay is sampled out', () => {
@@ -98,9 +86,8 @@ describe('getReplayLink', () => {
viewContexts,
true
)
- const errorType = isIE() ? 'browser-not-supported' : 'incorrect-session-plan'
expect(link).toBe(
- `https://app.datadoghq.com/rum/replay/sessions/session-id-1?error-type=${errorType}&seed=view-id-1&from=123456`
+ 'https://app.datadoghq.com/rum/replay/sessions/session-id-1?error-type=incorrect-session-plan&seed=view-id-1&from=123456'
)
})
@@ -117,8 +104,7 @@ describe('getReplayLink', () => {
true
)
- const errorType = isIE() ? 'browser-not-supported' : 'rum-not-tracked'
- expect(link).toBe(`https://app.datadoghq.com/rum/replay/sessions/no-session-id?error-type=${errorType}`)
+ expect(link).toBe('https://app.datadoghq.com/rum/replay/sessions/no-session-id?error-type=rum-not-tracked')
})
it('should add a param if the replay was not started', () => {
@@ -139,9 +125,43 @@ describe('getReplayLink', () => {
false
)
- const errorType = isIE() ? 'browser-not-supported' : 'replay-not-started'
expect(link).toBe(
- `https://app.datadoghq.com/rum/replay/sessions/session-id-1?error-type=${errorType}&seed=view-id-1&from=123456`
+ 'https://app.datadoghq.com/rum/replay/sessions/session-id-1?error-type=replay-not-started&seed=view-id-1&from=123456'
)
})
+
+ describe('browser not supported', () => {
+ beforeEach(() => {
+ // browser support function rely on Array.from being a function.
+ const original = Array.from
+ Array.from = undefined as any
+
+ registerCleanupTask(() => {
+ Array.from = original
+ })
+ })
+
+ it('should add a param if the browser is not supported', () => {
+ const sessionManager = createRumSessionManagerMock().setId('session-id-1')
+ const viewContexts = {
+ findView: () => ({
+ id: 'view-id-1',
+ startClocks: {
+ timeStamp: 123456,
+ },
+ }),
+ } as ViewContexts
+
+ const link = getSessionReplayLink(
+ { ...DEFAULT_CONFIGURATION, site: 'datadoghq.com' },
+ sessionManager,
+ viewContexts,
+ false
+ )
+
+ expect(link).toBe(
+ 'https://app.datadoghq.com/rum/replay/sessions/session-id-1?error-type=browser-not-supported&seed=view-id-1&from=123456'
+ )
+ })
+ })
})
diff --git a/packages/rum/src/domain/record/record.spec.ts b/packages/rum/src/domain/record/record.spec.ts
index b3df25a5e6..035cf8b4be 100644
--- a/packages/rum/src/domain/record/record.spec.ts
+++ b/packages/rum/src/domain/record/record.spec.ts
@@ -1,4 +1,4 @@
-import { DefaultPrivacyLevel, findLast, isIE } from '@datadog/browser-core'
+import { DefaultPrivacyLevel, findLast } from '@datadog/browser-core'
import type { RumConfiguration, ViewCreatedEvent } from '@datadog/browser-rum-core'
import { LifeCycle, LifeCycleEventType } from '@datadog/browser-rum-core'
import type { Clock } from '@datadog/browser-core/test'
@@ -39,10 +39,6 @@ describe('record', () => {
const FAKE_VIEW_ID = '123'
beforeEach(() => {
- if (isIE()) {
- pending('IE not supported')
- }
-
emitSpy = jasmine.createSpy()
registerCleanupTask(() => {
diff --git a/packages/rum/src/domain/record/serialization/serializationUtils.spec.ts b/packages/rum/src/domain/record/serialization/serializationUtils.spec.ts
index 6ee0f8ced8..22bfcdcb23 100644
--- a/packages/rum/src/domain/record/serialization/serializationUtils.spec.ts
+++ b/packages/rum/src/domain/record/serialization/serializationUtils.spec.ts
@@ -1,4 +1,3 @@
-import { isIE } from '@datadog/browser-core'
import { NodePrivacyLevel } from '@datadog/browser-rum-core'
import {
getSerializedNodeId,
@@ -37,12 +36,6 @@ describe('serialized Node storage in DOM Nodes', () => {
})
describe('getElementInputValue', () => {
- beforeEach(() => {
- if (isIE()) {
- pending('IE not supported')
- }
- })
-
it('returns "undefined" for a non-input element', () => {
expect(getElementInputValue(document.createElement('div'), NodePrivacyLevel.ALLOW)).toBeUndefined()
})
diff --git a/packages/rum/src/domain/record/serialization/serializeAttribute.spec.ts b/packages/rum/src/domain/record/serialization/serializeAttribute.spec.ts
index 992a9a35db..9e813f7ba4 100644
--- a/packages/rum/src/domain/record/serialization/serializeAttribute.spec.ts
+++ b/packages/rum/src/domain/record/serialization/serializeAttribute.spec.ts
@@ -1,5 +1,3 @@
-import { isIE } from '@datadog/browser-core'
-
import type { RumConfiguration } from '@datadog/browser-rum-core'
import {
STABLE_ATTRIBUTES,
@@ -13,12 +11,6 @@ import { serializeAttribute } from './serializeAttribute'
const DEFAULT_CONFIGURATION = {} as RumConfiguration
describe('serializeAttribute', () => {
- beforeEach(() => {
- if (isIE()) {
- pending('IE not supported')
- }
- })
-
it('truncates "data:" URIs after long string length', () => {
const node = document.createElement('p')
diff --git a/packages/rum/src/domain/record/serialization/serializeAttributes.spec.ts b/packages/rum/src/domain/record/serialization/serializeAttributes.spec.ts
index 1aaab9b4e1..9fea88a3e4 100644
--- a/packages/rum/src/domain/record/serialization/serializeAttributes.spec.ts
+++ b/packages/rum/src/domain/record/serialization/serializeAttributes.spec.ts
@@ -1,4 +1,3 @@
-import { isIE } from '@datadog/browser-core'
import { registerCleanupTask } from '@datadog/browser-core/test'
import { getCssRulesString } from './serializeAttributes'
@@ -8,9 +7,6 @@ describe('getCssRulesString', () => {
let styleNode: HTMLStyleElement
beforeEach(() => {
- if (isIE()) {
- pending('IE not supported')
- }
styleNode = document.createElement('style')
document.body.appendChild(styleNode)
diff --git a/packages/rum/src/domain/record/serialization/serializeNode.spec.ts b/packages/rum/src/domain/record/serialization/serializeNode.spec.ts
index 7166308ba4..fb0a6bf612 100644
--- a/packages/rum/src/domain/record/serialization/serializeNode.spec.ts
+++ b/packages/rum/src/domain/record/serialization/serializeNode.spec.ts
@@ -1,4 +1,4 @@
-import { isIE, noop } from '@datadog/browser-core'
+import { noop } from '@datadog/browser-core'
import type { RumConfiguration } from '@datadog/browser-rum-core'
import { isAdoptedStyleSheetsSupported, registerCleanupTask } from '@datadog/browser-core/test'
import {
@@ -57,12 +57,6 @@ describe('serializeNodeWithId', () => {
addShadowRootSpy = jasmine.createSpy()
})
- beforeEach(() => {
- if (isIE()) {
- pending('IE not supported')
- }
- })
-
describe('document serialization', () => {
it('serializes a document', () => {
const document = new DOMParser().parseFromString('foo', 'text/html')
@@ -805,10 +799,6 @@ describe('serializeDocumentNode handles', function testAllowDomTree() {
const toJSONObj = (data: any) => JSON.parse(JSON.stringify(data)) as unknown
beforeEach(() => {
- if (isIE()) {
- pending('IE not supported')
- }
-
registerCleanupTask(() => {
if (isAdoptedStyleSheetsSupported()) {
document.adoptedStyleSheets = []
diff --git a/packages/rum/src/domain/record/startFullSnapshots.spec.ts b/packages/rum/src/domain/record/startFullSnapshots.spec.ts
index fbd83ab367..c8eea8c778 100644
--- a/packages/rum/src/domain/record/startFullSnapshots.spec.ts
+++ b/packages/rum/src/domain/record/startFullSnapshots.spec.ts
@@ -1,7 +1,7 @@
import type { RumConfiguration, ViewCreatedEvent } from '@datadog/browser-rum-core'
import { LifeCycle, LifeCycleEventType } from '@datadog/browser-rum-core'
import type { TimeStamp } from '@datadog/browser-core'
-import { isIE, noop } from '@datadog/browser-core'
+import { noop } from '@datadog/browser-core'
import { mockExperimentalFeatures, mockRequestIdleCallback } from '@datadog/browser-core/test'
import type { BrowserRecord } from '../../types'
import { ExperimentalFeature } from '../../../../core/src/tools/experimentalFeatures'
@@ -17,10 +17,6 @@ describe('startFullSnapshots', () => {
let fullSnapshotReadyCallback: jasmine.Spy<(records: BrowserRecord[]) => void>
beforeEach(() => {
- if (isIE()) {
- pending('IE not supported')
- }
-
lifeCycle = new LifeCycle()
mockExperimentalFeatures([ExperimentalFeature.ASYNC_FULL_SNAPSHOT])
fullSnapshotPendingCallback = jasmine.createSpy('fullSnapshotPendingCallback')
diff --git a/packages/rum/src/domain/record/trackers/trackFocus.spec.ts b/packages/rum/src/domain/record/trackers/trackFocus.spec.ts
index ded044c7f5..a4575b33ec 100644
--- a/packages/rum/src/domain/record/trackers/trackFocus.spec.ts
+++ b/packages/rum/src/domain/record/trackers/trackFocus.spec.ts
@@ -1,4 +1,4 @@
-import { DefaultPrivacyLevel, isIE } from '@datadog/browser-core'
+import { DefaultPrivacyLevel } from '@datadog/browser-core'
import { createNewEvent, registerCleanupTask } from '@datadog/browser-core/test'
import type { RumConfiguration } from '@datadog/browser-rum-core'
import { RecordType } from '../../../types'
@@ -11,9 +11,6 @@ describe('trackFocus', () => {
let configuration: RumConfiguration
beforeEach(() => {
- if (isIE()) {
- pending('IE not supported')
- }
configuration = { defaultPrivacyLevel: DefaultPrivacyLevel.ALLOW } as RumConfiguration
focusCallback = jasmine.createSpy()
focusTracker = trackFocus(configuration, focusCallback)
diff --git a/packages/rum/src/domain/record/trackers/trackFrustration.spec.ts b/packages/rum/src/domain/record/trackers/trackFrustration.spec.ts
index b59275ac56..00e29c6225 100644
--- a/packages/rum/src/domain/record/trackers/trackFrustration.spec.ts
+++ b/packages/rum/src/domain/record/trackers/trackFrustration.spec.ts
@@ -1,4 +1,3 @@
-import { isIE } from '@datadog/browser-core'
import type { RawRumActionEvent } from '@datadog/browser-rum-core'
import { ActionType, LifeCycle, LifeCycleEventType } from '@datadog/browser-rum-core'
import type { RawRumEventCollectedData } from 'packages/rum-core/src/domain/lifeCycle'
@@ -20,9 +19,6 @@ describe('trackFrustration', () => {
let recordIds: RecordIds
beforeEach(() => {
- if (isIE()) {
- pending('IE not supported')
- }
mouseEvent = new MouseEvent('pointerup')
frustrationsCallbackSpy = jasmine.createSpy()
recordIds = initRecordIds()
diff --git a/packages/rum/src/domain/record/trackers/trackInput.spec.ts b/packages/rum/src/domain/record/trackers/trackInput.spec.ts
index ce6be674dd..b8d53e8278 100644
--- a/packages/rum/src/domain/record/trackers/trackInput.spec.ts
+++ b/packages/rum/src/domain/record/trackers/trackInput.spec.ts
@@ -1,4 +1,4 @@
-import { DefaultPrivacyLevel, isIE } from '@datadog/browser-core'
+import { DefaultPrivacyLevel } from '@datadog/browser-core'
import type { Clock } from '@datadog/browser-core/test'
import { createNewEvent, mockClock, registerCleanupTask } from '@datadog/browser-core/test'
import type { RumConfiguration } from '@datadog/browser-rum-core'
@@ -20,9 +20,6 @@ describe('trackInput', () => {
let configuration: RumConfiguration
beforeEach(() => {
- if (isIE()) {
- pending('IE not supported')
- }
configuration = { defaultPrivacyLevel: DefaultPrivacyLevel.ALLOW } as RumConfiguration
inputCallbackSpy = jasmine.createSpy()
input = appendElement('') as HTMLInputElement
diff --git a/packages/rum/src/domain/record/trackers/trackMediaInteraction.spec.ts b/packages/rum/src/domain/record/trackers/trackMediaInteraction.spec.ts
index d436beb50f..d7f621af96 100644
--- a/packages/rum/src/domain/record/trackers/trackMediaInteraction.spec.ts
+++ b/packages/rum/src/domain/record/trackers/trackMediaInteraction.spec.ts
@@ -1,4 +1,4 @@
-import { DefaultPrivacyLevel, isIE } from '@datadog/browser-core'
+import { DefaultPrivacyLevel } from '@datadog/browser-core'
import { createNewEvent, registerCleanupTask } from '@datadog/browser-core/test'
import type { RumConfiguration } from '@datadog/browser-rum-core'
import { appendElement } from '../../../../../rum-core/test'
@@ -17,9 +17,6 @@ describe('trackMediaInteraction', () => {
let configuration: RumConfiguration
beforeEach(() => {
- if (isIE()) {
- pending('IE not supported')
- }
configuration = { defaultPrivacyLevel: DefaultPrivacyLevel.ALLOW } as RumConfiguration
mediaInteractionCallback = jasmine.createSpy()
diff --git a/packages/rum/src/domain/record/trackers/trackMouseInteraction.spec.ts b/packages/rum/src/domain/record/trackers/trackMouseInteraction.spec.ts
index 789c28b707..7f4875030c 100644
--- a/packages/rum/src/domain/record/trackers/trackMouseInteraction.spec.ts
+++ b/packages/rum/src/domain/record/trackers/trackMouseInteraction.spec.ts
@@ -1,4 +1,4 @@
-import { DOM_EVENT, DefaultPrivacyLevel, isIE } from '@datadog/browser-core'
+import { DOM_EVENT, DefaultPrivacyLevel } from '@datadog/browser-core'
import { createNewEvent, registerCleanupTask } from '@datadog/browser-core/test'
import type { RumConfiguration } from '@datadog/browser-rum-core'
import { appendElement } from '../../../../../rum-core/test'
@@ -20,10 +20,6 @@ describe('trackMouseInteraction', () => {
let configuration: RumConfiguration
beforeEach(() => {
- if (isIE()) {
- pending('IE not supported')
- }
-
configuration = { defaultPrivacyLevel: DefaultPrivacyLevel.ALLOW } as RumConfiguration
a = appendElement('') as HTMLAnchorElement // tabindex 0 makes the element focusable
a.dispatchEvent(createNewEvent(DOM_EVENT.FOCUS))
diff --git a/packages/rum/src/domain/record/trackers/trackMove.spec.ts b/packages/rum/src/domain/record/trackers/trackMove.spec.ts
index c4d86a4316..1d989c9c12 100644
--- a/packages/rum/src/domain/record/trackers/trackMove.spec.ts
+++ b/packages/rum/src/domain/record/trackers/trackMove.spec.ts
@@ -1,4 +1,3 @@
-import { isIE } from '@datadog/browser-core'
import { createNewEvent, registerCleanupTask } from '@datadog/browser-core/test'
import type { RumConfiguration } from '@datadog/browser-rum-core'
import { SerializationContextStatus, serializeDocument } from '../serialization'
@@ -15,10 +14,6 @@ describe('trackMove', () => {
let configuration: RumConfiguration
beforeEach(() => {
- if (isIE()) {
- pending('IE not supported')
- }
-
configuration = {} as RumConfiguration
serializeDocument(document, DEFAULT_CONFIGURATION, {
shadowRootsController: DEFAULT_SHADOW_ROOT_CONTROLLER,
diff --git a/packages/rum/src/domain/record/trackers/trackMutation.spec.ts b/packages/rum/src/domain/record/trackers/trackMutation.spec.ts
index a18b00c98a..732edb7c2a 100644
--- a/packages/rum/src/domain/record/trackers/trackMutation.spec.ts
+++ b/packages/rum/src/domain/record/trackers/trackMutation.spec.ts
@@ -1,4 +1,4 @@
-import { DefaultPrivacyLevel, isIE } from '@datadog/browser-core'
+import { DefaultPrivacyLevel } from '@datadog/browser-core'
import type { RumConfiguration } from '@datadog/browser-rum-core'
import { collectAsyncCalls, registerCleanupTask } from '@datadog/browser-core/test'
import {
@@ -64,10 +64,6 @@ describe('trackMutation', () => {
}
beforeEach(() => {
- if (isIE()) {
- pending('IE not supported')
- }
-
sandbox = appendElement('')
registerCleanupTask(() => {
diff --git a/packages/rum/src/domain/record/trackers/trackScroll.spec.ts b/packages/rum/src/domain/record/trackers/trackScroll.spec.ts
index a97cca4477..f53d4c47a4 100644
--- a/packages/rum/src/domain/record/trackers/trackScroll.spec.ts
+++ b/packages/rum/src/domain/record/trackers/trackScroll.spec.ts
@@ -1,4 +1,4 @@
-import { DefaultPrivacyLevel, isIE } from '@datadog/browser-core'
+import { DefaultPrivacyLevel } from '@datadog/browser-core'
import { createNewEvent, registerCleanupTask } from '@datadog/browser-core/test'
import type { RumConfiguration } from '@datadog/browser-rum-core'
import { appendElement } from '../../../../../rum-core/test'
@@ -19,9 +19,6 @@ describe('trackScroll', () => {
let elementsScrollPositions: ElementsScrollPositions
beforeEach(() => {
- if (isIE()) {
- pending('IE not supported')
- }
configuration = { defaultPrivacyLevel: DefaultPrivacyLevel.ALLOW } as RumConfiguration
elementsScrollPositions = createElementsScrollPositions()
scrollCallback = jasmine.createSpy()
diff --git a/packages/rum/src/domain/record/trackers/trackStyleSheet.spec.ts b/packages/rum/src/domain/record/trackers/trackStyleSheet.spec.ts
index 339b57f032..b68e8f6c96 100644
--- a/packages/rum/src/domain/record/trackers/trackStyleSheet.spec.ts
+++ b/packages/rum/src/domain/record/trackers/trackStyleSheet.spec.ts
@@ -1,4 +1,3 @@
-import { isIE } from '@datadog/browser-core'
import { isFirefox, registerCleanupTask } from '@datadog/browser-core/test'
import { serializeDocument, SerializationContextStatus } from '../serialization'
import { createElementsScrollPositions } from '../elementsScrollPositions'
@@ -16,9 +15,6 @@ describe('trackStyleSheet', () => {
const styleRule = '.selector-1 { color: #fff }'
beforeEach(() => {
- if (isIE()) {
- pending('IE not supported')
- }
styleSheetCallbackSpy = jasmine.createSpy()
styleElement = document.createElement('style')
document.head.appendChild(styleElement)
@@ -188,9 +184,6 @@ describe('StyleSheetObserver > getPathToNestedCSSRule', () => {
let styleSheet: CSSStyleSheet
let styleElement: HTMLStyleElement
beforeEach(() => {
- if (isIE()) {
- pending('IE not supported')
- }
styleElement = document.createElement('style')
document.head.appendChild(styleElement)
styleSheet = styleElement.sheet!
diff --git a/packages/rum/src/domain/record/trackers/trackViewportResize.spec.ts b/packages/rum/src/domain/record/trackers/trackViewportResize.spec.ts
index f4c8a5132a..caa121dafd 100644
--- a/packages/rum/src/domain/record/trackers/trackViewportResize.spec.ts
+++ b/packages/rum/src/domain/record/trackers/trackViewportResize.spec.ts
@@ -1,4 +1,4 @@
-import { DefaultPrivacyLevel, isIE } from '@datadog/browser-core'
+import { DefaultPrivacyLevel } from '@datadog/browser-core'
import { createNewEvent, registerCleanupTask } from '@datadog/browser-core/test'
import type { RumConfiguration } from '@datadog/browser-rum-core'
import { serializeDocument, SerializationContextStatus } from '../serialization'
@@ -17,9 +17,6 @@ describe('trackViewportResize', () => {
let elementsScrollPositions: ElementsScrollPositions
beforeEach(() => {
- if (isIE()) {
- pending('IE not supported')
- }
configuration = { defaultPrivacyLevel: DefaultPrivacyLevel.ALLOW } as RumConfiguration
elementsScrollPositions = createElementsScrollPositions()
visualViewportResizeCallback = jasmine.createSpy()
diff --git a/packages/rum/src/domain/segmentCollection/buildReplayPayload.spec.ts b/packages/rum/src/domain/segmentCollection/buildReplayPayload.spec.ts
index f5c630a700..4a52d2dea9 100644
--- a/packages/rum/src/domain/segmentCollection/buildReplayPayload.spec.ts
+++ b/packages/rum/src/domain/segmentCollection/buildReplayPayload.spec.ts
@@ -1,5 +1,4 @@
import pako from 'pako'
-import { isIE } from '@datadog/browser-core'
import type { BrowserSegment, BrowserSegmentMetadata } from '../../types'
import { readReplayPayload } from '../../../test'
import { buildReplayPayload } from './buildReplayPayload'
@@ -24,12 +23,6 @@ describe('buildReplayPayload', () => {
compressed_segment_size: COMPRESSED_SEGMENT.byteLength,
}
- beforeEach(() => {
- if (isIE()) {
- pending('no TextEncoder support')
- }
- })
-
it('adds the segment as a file', async () => {
const payload = buildReplayPayload(COMPRESSED_SEGMENT, METADATA, SERIALIZED_SEGMENT.length)
const segmentEntry = (payload.data as FormData).get('segment')! as File
diff --git a/packages/rum/src/domain/segmentCollection/segment.spec.ts b/packages/rum/src/domain/segmentCollection/segment.spec.ts
index 067a1c2002..54104cd132 100644
--- a/packages/rum/src/domain/segmentCollection/segment.spec.ts
+++ b/packages/rum/src/domain/segmentCollection/segment.spec.ts
@@ -1,5 +1,5 @@
import type { DeflateEncoder, TimeStamp } from '@datadog/browser-core'
-import { noop, setDebugMode, isIE, DeflateEncoderStreamId } from '@datadog/browser-core'
+import { noop, setDebugMode, DeflateEncoderStreamId } from '@datadog/browser-core'
import type { RumConfiguration } from '@datadog/browser-rum-core'
import { registerCleanupTask } from '@datadog/browser-core/test'
import { MockWorker } from '../../../test'
@@ -29,10 +29,6 @@ describe('Segment', () => {
let encoder: DeflateEncoder
beforeEach(() => {
- if (isIE()) {
- pending('IE not supported')
- }
-
worker = new MockWorker()
encoder = createDeflateEncoder(configuration, worker, DeflateEncoderStreamId.REPLAY)
setDebugMode(true)
diff --git a/packages/rum/src/domain/segmentCollection/segmentCollection.spec.ts b/packages/rum/src/domain/segmentCollection/segmentCollection.spec.ts
index 239ebc18bf..d5c30c63cf 100644
--- a/packages/rum/src/domain/segmentCollection/segmentCollection.spec.ts
+++ b/packages/rum/src/domain/segmentCollection/segmentCollection.spec.ts
@@ -1,5 +1,5 @@
import type { ClocksState, HttpRequest, TimeStamp } from '@datadog/browser-core'
-import { DeflateEncoderStreamId, PageExitReason, isIE } from '@datadog/browser-core'
+import { DeflateEncoderStreamId, PageExitReason } from '@datadog/browser-core'
import type { ViewContexts, ViewContext, RumConfiguration } from '@datadog/browser-rum-core'
import { LifeCycle, LifeCycleEventType } from '@datadog/browser-rum-core'
import type { Clock } from '@datadog/browser-core/test'
@@ -58,9 +58,6 @@ describe('startSegmentCollection', () => {
}
beforeEach(() => {
- if (isIE()) {
- pending('IE not supported')
- }
configuration = {} as RumConfiguration
lifeCycle = new LifeCycle()
worker = new MockWorker()
diff --git a/test/browsers.conf.js b/test/browsers.conf.js
index 03bd46219b..e9d6f1f6b9 100644
--- a/test/browsers.conf.js
+++ b/test/browsers.conf.js
@@ -36,13 +36,6 @@ const browserConfigurations = [
osVersion: '14',
device: 'iPhone 11',
},
- {
- sessionName: 'IE',
- name: 'IE',
- version: '11.0',
- os: 'Windows',
- osVersion: '10',
- },
]
module.exports = {
diff --git a/test/e2e/lib/helpers/browser.ts b/test/e2e/lib/helpers/browser.ts
index f81ad40186..260d098f19 100644
--- a/test/e2e/lib/helpers/browser.ts
+++ b/test/e2e/lib/helpers/browser.ts
@@ -2,7 +2,7 @@ import * as os from 'os'
// To keep tests sane, ensure we got a fixed list of possible platforms and browser names.
const validPlatformNames = ['windows', 'macos', 'linux', 'ios', 'android'] as const
-const validBrowserNames = ['edge', 'safari', 'chrome', 'firefox', 'ie'] as const
+const validBrowserNames = ['edge', 'safari', 'chrome', 'firefox'] as const
export function getBrowserName(): (typeof validBrowserNames)[number] {
const capabilities = browser.capabilities
diff --git a/test/e2e/wdio.bs.conf.ts b/test/e2e/wdio.bs.conf.ts
index 53ff9ca9d7..7ab959baeb 100644
--- a/test/e2e/wdio.bs.conf.ts
+++ b/test/e2e/wdio.bs.conf.ts
@@ -11,7 +11,6 @@ export const config: Options.Testrunner = {
capabilities: browserConfigurations
.filter(
(configuration) =>
- configuration.sessionName !== 'IE' &&
// Safari mobile on iOS <= 14.0 does not support
// the way we flush events on page change
// TODO check newer version on browserstack
diff --git a/test/unit/karma.bs.conf.js b/test/unit/karma.bs.conf.js
index f26a918f9b..24c1bfb937 100644
--- a/test/unit/karma.bs.conf.js
+++ b/test/unit/karma.bs.conf.js
@@ -6,12 +6,6 @@ module.exports = function (config) {
config.set({
...karmaBaseConf,
exclude: [
- // Exclude rum-react from BrowserStack because it is using dependencies that are not compatible
- // with IE11 (react and react-router). Just skipping tests with Jasmine `pending` is not
- // enough because those dependencies are failing at module evaluation on IE11. This exclusion
- // can be removed when dropping IE11 support.
- 'packages/rum-react/**',
-
// Exclude developer-extension from BrowserStack because it is is only compatible with Chrome
// so there is no point to test it on other browsers.
'developer-extension/**',