diff options
author | Luke Shumaker <lukeshu@sbcglobal.net> | 2016-05-01 15:30:02 -0400 |
---|---|---|
committer | Luke Shumaker <lukeshu@sbcglobal.net> | 2016-05-01 15:30:02 -0400 |
commit | 1de335ad3f395ca6861085393ba366a9e3fb4a0d (patch) | |
tree | f1fdd326034e05177596851be6a7127615d81498 /vendor/oojs/oojs-ui/tests/Element.test.js | |
parent | 9c75fa8ff6d4d38ef552c00fef5969fb154765e8 (diff) | |
parent | f6d65e533c62f6deb21342d4901ece24497b433e (diff) |
Merge commit 'f6d65'
# Conflicts:
# skins/ArchLinux/ArchLinux.php
Diffstat (limited to 'vendor/oojs/oojs-ui/tests/Element.test.js')
-rw-r--r-- | vendor/oojs/oojs-ui/tests/Element.test.js | 52 |
1 files changed, 52 insertions, 0 deletions
diff --git a/vendor/oojs/oojs-ui/tests/Element.test.js b/vendor/oojs/oojs-ui/tests/Element.test.js new file mode 100644 index 00000000..b37d8e35 --- /dev/null +++ b/vendor/oojs/oojs-ui/tests/Element.test.js @@ -0,0 +1,52 @@ +QUnit.module( 'Element', { + setup: function () { + this.fixture = document.createElement( 'div' ); + document.body.appendChild( this.fixture ); + + this.makeFrame = function () { + var frame = document.createElement( 'iframe' ); + this.fixture.appendChild( frame ); + return ( frame.contentWindow && frame.contentWindow.document ) || frame.contentDocument; + }; + }, + teardown: function () { + this.fixture.parentNode.removeChild( this.fixture ); + this.fixture = null; + } +} ); + +QUnit.test( 'static.getDocument', 10, function ( assert ) { + var frameDoc, frameEl, frameDiv, + el = this.fixture, + div = document.createElement( 'div' ), + $el = $( this.fixture ), + $div = $( '<div>' ), + win = window, + doc = document; + + frameDoc = this.makeFrame(); + frameEl = frameDoc.createElement( 'span' ); + frameDoc.documentElement.appendChild( frameEl ); + frameDiv = frameDoc.createElement( 'div' ); + + assert.strictEqual( OO.ui.Element.static.getDocument( $el ), doc, 'jQuery' ); + assert.strictEqual( OO.ui.Element.static.getDocument( $div ), doc, 'jQuery (detached)' ); + assert.strictEqual( OO.ui.Element.static.getDocument( el ), doc, 'HTMLElement' ); + assert.strictEqual( OO.ui.Element.static.getDocument( div ), doc, 'HTMLElement (detached)' ); + assert.strictEqual( OO.ui.Element.static.getDocument( win ), doc, 'Window' ); + assert.strictEqual( OO.ui.Element.static.getDocument( doc ), doc, 'HTMLDocument' ); + + assert.strictEqual( OO.ui.Element.static.getDocument( frameEl ), frameDoc, 'HTMLElement (framed)' ); + assert.strictEqual( OO.ui.Element.static.getDocument( frameDiv ), frameDoc, 'HTMLElement (framed, detached)' ); + assert.strictEqual( OO.ui.Element.static.getDocument( frameDoc ), frameDoc, 'HTMLDocument (framed)' ); + + assert.strictEqual( OO.ui.Element.static.getDocument( {} ), null, 'Invalid' ); +} ); + +QUnit.test( 'getElementDocument', 1, function ( assert ) { + var el, doc; + + doc = document; + el = new OO.ui.Element(); + assert.strictEqual( el.getElementDocument(), doc ); +} ); |