Skip to content

Commit 1d60e0d

Browse files
committed
maybe
1 parent dafce16 commit 1d60e0d

File tree

2 files changed

+20
-3
lines changed

2 files changed

+20
-3
lines changed

src/browser/replay/recorder.js

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@ import { EventType } from '@rrweb/types';
33

44
import hrtime from '../../tracing/hrtime.js';
55
import logger from '../../logger.js';
6+
import defaults from './defaults.js';
67

78
/** @typedef {import('./recorder.js').BufferCursor} BufferCursor */
89

@@ -97,7 +98,11 @@ export default class Recorder {
9798
* @returns {number} Checkout interval in milliseconds
9899
*/
99100
checkoutEveryNms() {
100-
return ((this.options.maxSeconds ?? 10) * 1000) / 2;
101+
const maxSeconds =
102+
this.options.maxSeconds > 0
103+
? this.options.maxSeconds
104+
: defaults.maxSeconds;
105+
return (maxSeconds * 1000) / 2;
101106
}
102107

103108
/**

test/replay/unit/recorder.test.js

Lines changed: 14 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -159,17 +159,29 @@ describe('Recorder', function () {
159159
expect(recorder.checkoutEveryNms()).to.equal(5000);
160160
});
161161

162-
it('uses default of 10 seconds when maxSeconds not provided', function () {
162+
it('uses default of 300 seconds when maxSeconds not provided', function () {
163163
const recorder = new Recorder({}, mockRecordFn);
164164

165-
expect(recorder.checkoutEveryNms()).to.equal(5000);
165+
expect(recorder.checkoutEveryNms()).to.equal(150000);
166166
});
167167

168168
it('calculates correctly for different maxSeconds values', function () {
169169
const recorder = new Recorder({ maxSeconds: 20 }, mockRecordFn);
170170

171171
expect(recorder.checkoutEveryNms()).to.equal(10000);
172172
});
173+
174+
it('uses default when maxSeconds is 0', function () {
175+
const recorder = new Recorder({ maxSeconds: 0 }, mockRecordFn);
176+
177+
expect(recorder.checkoutEveryNms()).to.equal(150000);
178+
});
179+
180+
it('uses default when maxSeconds is negative', function () {
181+
const recorder = new Recorder({ maxSeconds: -5 }, mockRecordFn);
182+
183+
expect(recorder.checkoutEveryNms()).to.equal(150000);
184+
});
173185
});
174186

175187
describe('_previousSlot', function () {

0 commit comments

Comments
 (0)