Skip to content

Commit 303932c

Browse files
✅ make RUM session renewal test ignore resource events
Safari processes buffered PerformanceObserver resource entries when the mock clock ticks, so assert only on view events.
1 parent bbf879f commit 303932c

1 file changed

Lines changed: 10 additions & 10 deletions

File tree

packages/browser-rum-core/src/boot/startRum.spec.ts

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -108,24 +108,24 @@ describe('rum session', () => {
108108
})
109109

110110
it('when the session is renewed, a new view event should be sent', () => {
111+
const getViewEvents = () =>
112+
serverRumEvents.filter((event): event is RumViewEvent => event.type === RumEventType.VIEW)
113+
111114
clock.tick(0)
112-
expect(serverRumEvents.length).toEqual(1)
113-
expect(serverRumEvents[0].type).toEqual('view')
114-
expect(serverRumEvents[0].session.id).toEqual('42')
115+
expect(getViewEvents().length).toEqual(1)
116+
expect(getViewEvents()[0].session.id).toEqual('42')
115117

116118
lifeCycle.notify(LifeCycleEventType.SESSION_EXPIRED, { endClocks: relativeToClocks(relativeNow()) })
117-
expect(serverRumEvents.length).toEqual(2)
119+
expect(getViewEvents().length).toEqual(2)
118120

119121
sessionManager.setId('43')
120122
lifeCycle.notify(LifeCycleEventType.SESSION_RENEWED)
121123
clock.tick(0)
122124

123-
expect(serverRumEvents.length).toEqual(3)
124-
125-
// New view event
126-
expect(serverRumEvents[2].type).toEqual('view')
127-
expect(serverRumEvents[2].session.id).toEqual('43')
128-
expect(serverRumEvents[2].view.id).not.toEqual(serverRumEvents[0].view.id)
125+
const viewEvents = getViewEvents()
126+
expect(viewEvents.length).toEqual(3)
127+
expect(viewEvents[2].session.id).toEqual('43')
128+
expect(viewEvents[2].view.id).not.toEqual(viewEvents[0].view.id)
129129
})
130130
})
131131

0 commit comments

Comments
 (0)