mirror of
https://github.com/videojs/video.js.git
synced 2025-11-29 23:07:51 +02:00
refactor: remove IE8 specific changes (#5041)
BREAKING CHANGE: remove IE8, IE9, and IE10 specific JavaScript and CSS code. Remove Android 2.3 workaround.
This commit is contained in:
@@ -7,7 +7,6 @@ import Slider from '../../src/js/slider/slider.js';
|
||||
import FullscreenToggle from '../../src/js/control-bar/fullscreen-toggle.js';
|
||||
import TestHelpers from './test-helpers.js';
|
||||
import document from 'global/document';
|
||||
import Html5 from '../../src/js/tech/html5.js';
|
||||
import sinon from 'sinon';
|
||||
|
||||
QUnit.module('Controls', {
|
||||
@@ -111,107 +110,102 @@ QUnit.test('Fullscreen control text should be correct when fullscreenchange is t
|
||||
player.dispose();
|
||||
});
|
||||
|
||||
// only run these tests if Html5 is supported.
|
||||
// IE8 can't run the Html5 tech and to test this functionality otherwith the the tech faker,
|
||||
// we'd need to implement volume functionality into tech faker
|
||||
if (Html5.isSupported()) {
|
||||
QUnit.test('Clicking MuteToggle when volume is above 0 should toggle muted property and not change volume', function(assert) {
|
||||
const player = TestHelpers.makePlayer({ techOrder: ['html5'] });
|
||||
const muteToggle = new MuteToggle(player);
|
||||
QUnit.test('Clicking MuteToggle when volume is above 0 should toggle muted property and not change volume', function(assert) {
|
||||
const player = TestHelpers.makePlayer({ techOrder: ['html5'] });
|
||||
const muteToggle = new MuteToggle(player);
|
||||
|
||||
assert.equal(player.volume(), 1, 'volume is above 0');
|
||||
assert.equal(player.muted(), false, 'player is not muted');
|
||||
assert.equal(player.volume(), 1, 'volume is above 0');
|
||||
assert.equal(player.muted(), false, 'player is not muted');
|
||||
|
||||
muteToggle.handleClick();
|
||||
muteToggle.handleClick();
|
||||
|
||||
assert.equal(player.volume(), 1, 'volume is same');
|
||||
assert.equal(player.muted(), true, 'player is muted');
|
||||
assert.equal(player.volume(), 1, 'volume is same');
|
||||
assert.equal(player.muted(), true, 'player is muted');
|
||||
|
||||
player.dispose();
|
||||
});
|
||||
player.dispose();
|
||||
});
|
||||
|
||||
QUnit.test('Clicking MuteToggle when volume is 0 and muted is false should set volume to lastVolume and keep muted false', function(assert) {
|
||||
const player = TestHelpers.makePlayer({ techOrder: ['html5'] });
|
||||
const muteToggle = new MuteToggle(player);
|
||||
QUnit.test('Clicking MuteToggle when volume is 0 and muted is false should set volume to lastVolume and keep muted false', function(assert) {
|
||||
const player = TestHelpers.makePlayer({ techOrder: ['html5'] });
|
||||
const muteToggle = new MuteToggle(player);
|
||||
|
||||
player.volume(0);
|
||||
assert.equal(player.lastVolume_(), 1, 'lastVolume is set');
|
||||
assert.equal(player.muted(), false, 'player is muted');
|
||||
player.volume(0);
|
||||
assert.equal(player.lastVolume_(), 1, 'lastVolume is set');
|
||||
assert.equal(player.muted(), false, 'player is muted');
|
||||
|
||||
muteToggle.handleClick();
|
||||
muteToggle.handleClick();
|
||||
|
||||
assert.equal(player.volume(), 1, 'volume is set to lastVolume');
|
||||
assert.equal(player.muted(), false, 'muted remains false');
|
||||
assert.equal(player.volume(), 1, 'volume is set to lastVolume');
|
||||
assert.equal(player.muted(), false, 'muted remains false');
|
||||
|
||||
player.dispose();
|
||||
});
|
||||
player.dispose();
|
||||
});
|
||||
|
||||
QUnit.test('Clicking MuteToggle when volume is 0 and muted is true should set volume to lastVolume and sets muted to false', function(assert) {
|
||||
const player = TestHelpers.makePlayer({ techOrder: ['html5'] });
|
||||
const muteToggle = new MuteToggle(player);
|
||||
QUnit.test('Clicking MuteToggle when volume is 0 and muted is true should set volume to lastVolume and sets muted to false', function(assert) {
|
||||
const player = TestHelpers.makePlayer({ techOrder: ['html5'] });
|
||||
const muteToggle = new MuteToggle(player);
|
||||
|
||||
player.volume(0);
|
||||
player.muted(true);
|
||||
player.lastVolume_(0.5);
|
||||
player.volume(0);
|
||||
player.muted(true);
|
||||
player.lastVolume_(0.5);
|
||||
|
||||
muteToggle.handleClick();
|
||||
muteToggle.handleClick();
|
||||
|
||||
assert.equal(player.volume(), 0.5, 'volume is set to lastVolume');
|
||||
assert.equal(player.muted(), false, 'muted is set to false');
|
||||
assert.equal(player.volume(), 0.5, 'volume is set to lastVolume');
|
||||
assert.equal(player.muted(), false, 'muted is set to false');
|
||||
|
||||
player.dispose();
|
||||
});
|
||||
player.dispose();
|
||||
});
|
||||
|
||||
QUnit.test('Clicking MuteToggle when volume is 0, lastVolume is less than 0.1, and muted is true sets volume to 0.1 and muted to false', function(assert) {
|
||||
const player = TestHelpers.makePlayer({ techOrder: ['html5'] });
|
||||
const muteToggle = new MuteToggle(player);
|
||||
QUnit.test('Clicking MuteToggle when volume is 0, lastVolume is less than 0.1, and muted is true sets volume to 0.1 and muted to false', function(assert) {
|
||||
const player = TestHelpers.makePlayer({ techOrder: ['html5'] });
|
||||
const muteToggle = new MuteToggle(player);
|
||||
|
||||
player.volume(0);
|
||||
player.muted(true);
|
||||
player.lastVolume_(0.05);
|
||||
player.volume(0);
|
||||
player.muted(true);
|
||||
player.lastVolume_(0.05);
|
||||
|
||||
muteToggle.handleClick();
|
||||
muteToggle.handleClick();
|
||||
|
||||
// `Number.prototype.toFixed()` is used here to circumvent IE9 rounding issues
|
||||
assert.equal(player.volume().toFixed(1), (0.1).toFixed(1), 'since lastVolume is less than 0.1, volume is set to 0.1');
|
||||
assert.equal(player.muted(), false, 'muted is set to false');
|
||||
// `Number.prototype.toFixed()` is used here to circumvent rounding issues
|
||||
assert.equal(player.volume().toFixed(1), (0.1).toFixed(1), 'since lastVolume is less than 0.1, volume is set to 0.1');
|
||||
assert.equal(player.muted(), false, 'muted is set to false');
|
||||
|
||||
player.dispose();
|
||||
});
|
||||
player.dispose();
|
||||
});
|
||||
|
||||
QUnit.test('ARIA value of VolumeBar should start at 100', function(assert) {
|
||||
const player = TestHelpers.makePlayer({ techOrder: ['html5'] });
|
||||
const volumeBar = new VolumeBar(player);
|
||||
QUnit.test('ARIA value of VolumeBar should start at 100', function(assert) {
|
||||
const player = TestHelpers.makePlayer({ techOrder: ['html5'] });
|
||||
const volumeBar = new VolumeBar(player);
|
||||
|
||||
this.clock.tick(1);
|
||||
this.clock.tick(1);
|
||||
|
||||
assert.equal(volumeBar.el_.getAttribute('aria-valuenow'), 100, 'ARIA value of VolumeBar is 100');
|
||||
assert.equal(volumeBar.el_.getAttribute('aria-valuenow'), 100, 'ARIA value of VolumeBar is 100');
|
||||
|
||||
player.dispose();
|
||||
});
|
||||
player.dispose();
|
||||
});
|
||||
|
||||
QUnit.test('Muting with MuteToggle should set ARIA value of VolumeBar to 0', function(assert) {
|
||||
const player = TestHelpers.makePlayer({ techOrder: ['html5'] });
|
||||
const volumeBar = new VolumeBar(player);
|
||||
const muteToggle = new MuteToggle(player);
|
||||
QUnit.test('Muting with MuteToggle should set ARIA value of VolumeBar to 0', function(assert) {
|
||||
const player = TestHelpers.makePlayer({ techOrder: ['html5'] });
|
||||
const volumeBar = new VolumeBar(player);
|
||||
const muteToggle = new MuteToggle(player);
|
||||
|
||||
this.clock.tick(1);
|
||||
this.clock.tick(1);
|
||||
|
||||
assert.equal(player.volume(), 1, 'Volume is 1');
|
||||
assert.equal(player.muted(), false, 'Muted is false');
|
||||
assert.equal(volumeBar.el_.getAttribute('aria-valuenow'), 100, 'ARIA value of VolumeBar is 100');
|
||||
assert.equal(player.volume(), 1, 'Volume is 1');
|
||||
assert.equal(player.muted(), false, 'Muted is false');
|
||||
assert.equal(volumeBar.el_.getAttribute('aria-valuenow'), 100, 'ARIA value of VolumeBar is 100');
|
||||
|
||||
muteToggle.handleClick();
|
||||
muteToggle.handleClick();
|
||||
|
||||
// Because `volumechange` is triggered asynchronously, it doesn't end up
|
||||
// getting fired on `player` in the test environment, so we run it
|
||||
// manually.
|
||||
player.trigger('volumechange');
|
||||
// Because `volumechange` is triggered asynchronously, it doesn't end up
|
||||
// getting fired on `player` in the test environment, so we run it
|
||||
// manually.
|
||||
player.trigger('volumechange');
|
||||
|
||||
assert.equal(player.volume(), 1, 'Volume remains 1');
|
||||
assert.equal(player.muted(), true, 'Muted is true');
|
||||
assert.equal(volumeBar.el_.getAttribute('aria-valuenow'), 0, 'ARIA value of VolumeBar is 0');
|
||||
assert.equal(player.volume(), 1, 'Volume remains 1');
|
||||
assert.equal(player.muted(), true, 'Muted is true');
|
||||
assert.equal(volumeBar.el_.getAttribute('aria-valuenow'), 0, 'ARIA value of VolumeBar is 0');
|
||||
|
||||
player.dispose();
|
||||
});
|
||||
}
|
||||
player.dispose();
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user