From: Timo Tijhof Date: Wed, 10 Dec 2014 04:38:47 +0000 (+0000) Subject: jquery.mwExtension.test: Use better sample data for isDomElement X-Git-Tag: 1.31.0-rc.0~13018^2 X-Git-Url: https://git.cyclocoop.org/%242?a=commitdiff_plain;h=7605f112e4e093f9005ff8a82f08352b95904d6c;p=lhc%2Fweb%2Fwiklou.git jquery.mwExtension.test: Use better sample data for isDomElement * getElementById, getElementsByTagName()[0] and jQuery#get(0) all return an HTMLElement. Test that only once. Avoid using random internal QUnit elements like #qunit-header. These don't always exist (e.g. when running tests via Karma). If anything, it should use #qunit-fixture. But might as well create a simple DIV and test that. * Use 'null' instead of getElementById('not-found'). We're testing isDomElement, not getElementById. * Add test for TextNode. * Separate tests for isDomElement and isEmpty. Change-Id: If9284fbbd066897561ae8e679f5f7ceab9255e18 --- diff --git a/tests/qunit/suites/resources/jquery/jquery.mwExtension.test.js b/tests/qunit/suites/resources/jquery/jquery.mwExtension.test.js index 7571b929c9..795c2bbb8e 100644 --- a/tests/qunit/suites/resources/jquery/jquery.mwExtension.test.js +++ b/tests/qunit/suites/resources/jquery/jquery.mwExtension.test.js @@ -15,24 +15,22 @@ assert.equal( $.escapeRE( '0123456789' ), '0123456789', 'escapeRE - Leave numbers alone' ); } ); - QUnit.test( 'Is functions', 15, function ( assert ) { - assert.strictEqual( $.isDomElement( document.getElementById( 'qunit-header' ) ), true, - 'isDomElement: #qunit-header Node' ); - assert.strictEqual( $.isDomElement( document.getElementById( 'random-name' ) ), false, - 'isDomElement: #random-name (null)' ); + QUnit.test( 'isDomElement', 6, function ( assert ) { + assert.strictEqual( $.isDomElement( document.createElement( 'div' ) ), true, + 'isDomElement: HTMLElement' ); + assert.strictEqual( $.isDomElement( document.createTextNode( '' ) ), true, + 'isDomElement: TextNode' ); + assert.strictEqual( $.isDomElement( null ), false, + 'isDomElement: null' ); assert.strictEqual( $.isDomElement( document.getElementsByTagName( 'div' ) ), false, - 'isDomElement: getElementsByTagName Array' ); - assert.strictEqual( $.isDomElement( document.getElementsByTagName( 'div' )[0] ), true, - 'isDomElement: getElementsByTagName(..)[0] Node' ); + 'isDomElement: NodeList' ); assert.strictEqual( $.isDomElement( $( 'div' ) ), false, - 'isDomElement: jQuery object' ); - assert.strictEqual( $.isDomElement( $( 'div' ).get( 0 ) ), true, - 'isDomElement: jQuery object > Get node' ); - assert.strictEqual( $.isDomElement( document.createElement( 'div' ) ), true, - 'isDomElement: createElement' ); + 'isDomElement: jQuery' ); assert.strictEqual( $.isDomElement( { foo: 1 } ), false, - 'isDomElement: Object' ); + 'isDomElement: Plain Object' ); + } ); + QUnit.test( 'isEmpty', 7, function ( assert ) { assert.strictEqual( $.isEmpty( 'string' ), false, 'isEmpty: "string"' ); assert.strictEqual( $.isEmpty( '0' ), true, 'isEmpty: "0"' ); assert.strictEqual( $.isEmpty( '' ), true, 'isEmpty: ""' );