You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
78 lines
1.8 KiB
78 lines
1.8 KiB
4 years ago
|
import QUnit from 'qunit';
|
||
|
import videojs from 'video.js';
|
||
|
/* eslint-disable no-unused-vars */
|
||
|
import { Hls } from '../src/videojs-contrib-hls';
|
||
|
|
||
|
let when = function(element, type, cb, condition) {
|
||
|
element.on(type, function func() {
|
||
|
if (condition()) {
|
||
|
element.off(type, func);
|
||
|
cb();
|
||
|
}
|
||
|
});
|
||
|
};
|
||
|
|
||
|
let playFor = function(player, time, cb) {
|
||
|
let targetTime = player.currentTime() + time;
|
||
|
|
||
|
when(player, 'timeupdate', cb, () => player.currentTime() >= targetTime);
|
||
|
};
|
||
|
|
||
|
QUnit.module('Playback', {
|
||
|
beforeEach(assert) {
|
||
|
let done = assert.async();
|
||
|
let video = document.createElement('video');
|
||
|
|
||
|
video.width = 600;
|
||
|
video.height = 300;
|
||
|
document.querySelector('#qunit-fixture').appendChild(video);
|
||
|
this.player = videojs(video);
|
||
|
this.player.muted(true);
|
||
|
this.player.ready(done);
|
||
|
}
|
||
|
});
|
||
|
|
||
|
QUnit.test('Advanced Bip Bop', function(assert) {
|
||
|
let done = assert.async();
|
||
|
|
||
|
assert.expect(2);
|
||
|
let player = this.player;
|
||
|
|
||
|
player.autoplay(true);
|
||
|
|
||
|
playFor(player, 2, function() {
|
||
|
assert.ok(true, 'played for at least two seconds');
|
||
|
assert.equal(player.error(), null, 'has no player errors');
|
||
|
|
||
|
done();
|
||
|
});
|
||
|
|
||
|
player.src({
|
||
|
src: 'http://d2zihajmogu5jn.cloudfront.net/bipbop-advanced/bipbop_16x9_variant.m3u8',
|
||
|
type: 'application/x-mpegURL'
|
||
|
});
|
||
|
});
|
||
|
|
||
|
QUnit.test('Advanced Bip Bop preload=none', function(assert) {
|
||
|
let done = assert.async();
|
||
|
|
||
|
assert.expect(2);
|
||
|
let player = this.player;
|
||
|
|
||
|
player.autoplay(true);
|
||
|
player.preload('none');
|
||
|
|
||
|
playFor(player, 2, function() {
|
||
|
assert.ok(true, 'played for at least two seconds');
|
||
|
assert.equal(player.error(), null, 'has no player errors');
|
||
|
|
||
|
done();
|
||
|
});
|
||
|
|
||
|
player.src({
|
||
|
src: 'http://d2zihajmogu5jn.cloudfront.net/bipbop-advanced/bipbop_16x9_variant.m3u8',
|
||
|
type: 'application/x-mpegURL'
|
||
|
});
|
||
|
});
|
||
|
|