1
0
mirror of https://github.com/videojs/video.js.git synced 2024-12-12 11:15:04 +02:00
video.js/test/unit/utils/time-ranges.test.js
2016-08-12 13:51:31 -04:00

46 lines
1.6 KiB
JavaScript

/* eslint-env qunit */
import { createTimeRanges, createTimeRange } from '../../../src/js/utils/time-ranges.js';
QUnit.module('time-ranges');
QUnit.test('should export the deprecated createTimeRange function', function(assert) {
assert.equal(createTimeRange,
createTimeRanges,
'createTimeRange is an alias to createTimeRanges');
});
QUnit.test('should create a fake single timerange', function(assert) {
const tr = createTimeRanges(0, 10);
assert.equal(tr.length, 1, 'length should be 1');
assert.equal(tr.start(0),
0,
'works if start is called with valid index');
assert.equal(tr.end(0),
10,
'works if end is called with with valid index');
assert.throws(()=>tr.start(1),
/Failed to execute 'start'/,
'fails if start is called with an invalid index');
assert.throws(()=>tr.end(1),
/Failed to execute 'end'/,
'fails if end is called with with an invalid index');
});
QUnit.test('should create a fake multiple timerange', function(assert) {
const tr = createTimeRanges([
[0, 10],
[11, 20]
]);
assert.equal(tr.length, 2, 'length should equal 2');
assert.equal(tr.start(1), 11, 'works if start is called with valid index');
assert.equal(tr.end(1), 20, 'works if end is called with with valid index');
assert.throws(()=>tr.start(-1),
/Failed to execute 'start'/,
'fails if start is called with an invalid index');
assert.throws(()=>tr.end(-1),
/Failed to execute 'end'/,
'fails if end is called with with an invalid index');
});