* fix: eslint operator-linebreak issue * fix: eslint quotes issue * fix: react jsx indent and props issues * fix: eslint trailing spaces issues * fix: eslint line around directives issue * fix: eslint semi rule * fix: eslint newline per chain rule * fix: eslint space infix ops rule * fix: eslint space-in-parens issue * fix: eslint space before function paren issue * fix: eslint space before blocks issue * fix: eslint arrow body style issue * fix: eslint dot-location issue * fix: eslint quotes issue * fix: eslint quote props issue * fix: eslint operator assignment issue * fix: eslint new line after import issue * fix: indent issues * fix: operator assignment issue * fix: all autofixable eslint issues * fix: all react related fixable issues * fix: autofixable eslint issues * chore: remove all template literals * fix: remaining autofixable issues * chore: apply amnesty on all existing issues * fix: failing xss-lint issues * refactor: apply amnesty on remaining issues * refactor: apply amnesty on new issues * fix: remove file level suppressions * refactor: apply amnesty on new issues
105 lines
3.3 KiB
JavaScript
105 lines
3.3 KiB
JavaScript
// eslint-disable-next-line no-shadow-restricted-names
|
|
(function(undefined) {
|
|
describe('VideoPlayer Events', function() {
|
|
var state, oldOTBD;
|
|
|
|
describe('HTML5', function() {
|
|
beforeEach(function() {
|
|
oldOTBD = window.onTouchBasedDevice;
|
|
window.onTouchBasedDevice = jasmine
|
|
.createSpy('onTouchBasedDevice')
|
|
.and.returnValue(null);
|
|
|
|
state = jasmine.initializePlayer();
|
|
|
|
state.videoEl = $('video, iframe');
|
|
});
|
|
|
|
afterEach(function() {
|
|
$('source').remove();
|
|
window.onTouchBasedDevice = oldOTBD;
|
|
state.storage.clear();
|
|
state.videoPlayer.destroy();
|
|
});
|
|
|
|
it('initialize', function(done) {
|
|
jasmine.waitUntil(function() {
|
|
return state.el.hasClass('is-initialized');
|
|
}).then(function() {
|
|
expect('initialize').not.toHaveBeenTriggeredOn('.video');
|
|
}).always(done);
|
|
});
|
|
|
|
it('ready', function(done) {
|
|
jasmine.waitUntil(function() {
|
|
return state.el.hasClass('is-initialized');
|
|
}).then(function() {
|
|
expect('ready').not.toHaveBeenTriggeredOn('.video');
|
|
}).always(done);
|
|
});
|
|
|
|
it('play', function() {
|
|
state.videoPlayer.play();
|
|
expect('play').not.toHaveBeenTriggeredOn('.video');
|
|
});
|
|
|
|
it('pause', function() {
|
|
state.videoPlayer.play();
|
|
state.videoPlayer.pause();
|
|
expect('pause').not.toHaveBeenTriggeredOn('.video');
|
|
});
|
|
|
|
it('volumechange', function() {
|
|
state.videoPlayer.onVolumeChange(60);
|
|
|
|
expect('volumechange').not.toHaveBeenTriggeredOn('.video');
|
|
});
|
|
|
|
it('speedchange', function() {
|
|
state.videoPlayer.onSpeedChange('2.0');
|
|
|
|
expect('speedchange').not.toHaveBeenTriggeredOn('.video');
|
|
});
|
|
|
|
it('seek', function() {
|
|
state.videoPlayer.onCaptionSeek({
|
|
time: 1,
|
|
type: 'any'
|
|
});
|
|
|
|
expect('seek').not.toHaveBeenTriggeredOn('.video');
|
|
});
|
|
|
|
it('ended', function() {
|
|
state.videoPlayer.onEnded();
|
|
|
|
expect('ended').not.toHaveBeenTriggeredOn('.video');
|
|
});
|
|
});
|
|
|
|
describe('YouTube', function() {
|
|
beforeEach(function() {
|
|
oldOTBD = window.onTouchBasedDevice;
|
|
window.onTouchBasedDevice = jasmine
|
|
.createSpy('onTouchBasedDevice')
|
|
.and.returnValue(null);
|
|
|
|
state = jasmine.initializePlayerYouTube();
|
|
});
|
|
|
|
afterEach(function() {
|
|
$('source').remove();
|
|
window.onTouchBasedDevice = oldOTBD;
|
|
state.storage.clear();
|
|
state.videoPlayer.destroy();
|
|
});
|
|
|
|
it('qualitychange', function() {
|
|
state.videoPlayer.onPlaybackQualityChange();
|
|
|
|
expect('qualitychange').not.toHaveBeenTriggeredOn('.video');
|
|
});
|
|
});
|
|
});
|
|
}).call(this);
|