57 lines
2.1 KiB
JavaScript
57 lines
2.1 KiB
JavaScript
|
|
defineSuite([
|
||
|
|
'Widgets/FullscreenButton/FullscreenButtonViewModel',
|
||
|
|
'Core/Fullscreen'
|
||
|
|
], function(
|
||
|
|
FullscreenButtonViewModel,
|
||
|
|
Fullscreen) {
|
||
|
|
'use strict';
|
||
|
|
|
||
|
|
it('constructor sets default values', function() {
|
||
|
|
var viewModel = new FullscreenButtonViewModel();
|
||
|
|
expect(viewModel.fullscreenElement).toBe(document.body);
|
||
|
|
expect(viewModel.isDestroyed()).toEqual(false);
|
||
|
|
viewModel.destroy();
|
||
|
|
expect(viewModel.isDestroyed()).toEqual(true);
|
||
|
|
});
|
||
|
|
|
||
|
|
it('constructor sets expected values', function() {
|
||
|
|
var testElement = document.createElement('span');
|
||
|
|
var viewModel = new FullscreenButtonViewModel(testElement);
|
||
|
|
expect(viewModel.fullscreenElement).toBe(testElement);
|
||
|
|
viewModel.destroy();
|
||
|
|
});
|
||
|
|
|
||
|
|
it('constructor can take an element id', function() {
|
||
|
|
var testElement = document.createElement('span');
|
||
|
|
testElement.id = 'testElement';
|
||
|
|
document.body.appendChild(testElement);
|
||
|
|
var viewModel = new FullscreenButtonViewModel('testElement');
|
||
|
|
expect(viewModel.fullscreenElement).toBe(testElement);
|
||
|
|
viewModel.destroy();
|
||
|
|
document.body.removeChild(testElement);
|
||
|
|
});
|
||
|
|
|
||
|
|
it('isFullscreenEnabled work as expected', function() {
|
||
|
|
var viewModel = new FullscreenButtonViewModel();
|
||
|
|
expect(viewModel.isFullscreenEnabled).toEqual(Fullscreen.enabled);
|
||
|
|
viewModel.isFullscreenEnabled = false;
|
||
|
|
expect(viewModel.isFullscreenEnabled).toEqual(false);
|
||
|
|
viewModel.destroy();
|
||
|
|
});
|
||
|
|
|
||
|
|
it('can get and set fullscreenElement', function() {
|
||
|
|
var testElement = document.createElement('span');
|
||
|
|
var viewModel = new FullscreenButtonViewModel();
|
||
|
|
expect(viewModel.fullscreenElement).not.toBe(testElement);
|
||
|
|
viewModel.fullscreenElement = testElement;
|
||
|
|
expect(viewModel.fullscreenElement).toBe(testElement);
|
||
|
|
});
|
||
|
|
|
||
|
|
it('throws is setting fullscreenElement is not an Element', function() {
|
||
|
|
var viewModel = new FullscreenButtonViewModel();
|
||
|
|
expect(function() {
|
||
|
|
viewModel.fullscreenElement = {};
|
||
|
|
}).toThrowDeveloperError();
|
||
|
|
});
|
||
|
|
});
|