From: jenkins-bot Date: Thu, 6 Mar 2014 12:08:04 +0000 (+0000) Subject: Merge "jquery.makeCollapsible.test: Minor clean up" X-Git-Tag: 1.31.0-rc.0~16719 X-Git-Url: https://git.cyclocoop.org/%27.WWW_URL.%27admin/?a=commitdiff_plain;h=a52648ed16d6fb681e751b17e23251b14c07ec16;hp=9c3056b6f4e2dc9f3496335119c858f5238ecb7b;p=lhc%2Fweb%2Fwiklou.git Merge "jquery.makeCollapsible.test: Minor clean up" --- diff --git a/tests/qunit/suites/resources/jquery/jquery.makeCollapsible.test.js b/tests/qunit/suites/resources/jquery/jquery.makeCollapsible.test.js index 3c508d421c..bfb857d7ce 100644 --- a/tests/qunit/suites/resources/jquery/jquery.makeCollapsible.test.js +++ b/tests/qunit/suites/resources/jquery/jquery.makeCollapsible.test.js @@ -12,12 +12,11 @@ // This test is first because if it fails, then almost all of the latter tests are meaningless. QUnit.asyncTest( 'testing hooks/triggers', 4, function ( assert ) { - var $collapsible, $content, $toggle; - $collapsible = prepareCollapsible( - '
' + loremIpsum + '
' - ); - $content = $collapsible.find( '.mw-collapsible-content' ); - $toggle = $collapsible.find( '.mw-collapsible-toggle' ); + var $collapsible = prepareCollapsible( + '
' + loremIpsum + '
' + ), + $content = $collapsible.find( '.mw-collapsible-content' ), + $toggle = $collapsible.find( '.mw-collapsible-toggle' ); // In one full collapse-expand cycle, each event will be fired once @@ -34,7 +33,6 @@ } ); $collapsible.on( 'afterExpand.mw-collapsible', function () { assert.assertTrue( $content.is( ':visible' ), 'second afterCollapseExpand: content is visible' ); - QUnit.start(); } ); @@ -47,12 +45,11 @@ } ); QUnit.asyncTest( 'basic operation (
)', 5, function ( assert ) { - var $collapsible, $content, $toggle; - $collapsible = prepareCollapsible( - '
' + loremIpsum + '
' - ); - $content = $collapsible.find( '.mw-collapsible-content' ); - $toggle = $collapsible.find( '.mw-collapsible-toggle' ); + var $collapsible = prepareCollapsible( + '
' + loremIpsum + '
' + ), + $content = $collapsible.find( '.mw-collapsible-content' ), + $toggle = $collapsible.find( '.mw-collapsible-toggle' ); assert.equal( $content.length, 1, 'content is present' ); assert.equal( $content.find( $toggle ).length, 0, 'toggle is not a descendant of content' ); @@ -74,18 +71,17 @@ } ); QUnit.asyncTest( 'basic operation ()', 7, function ( assert ) { - var $collapsible, $headerRow, $contentRow, $toggle; - $collapsible = prepareCollapsible( - '
' + - '' + - '' + - '' + - '
' + loremIpsum + '' + loremIpsum + '
' + loremIpsum + '' + loremIpsum + '
' + loremIpsum + '' + loremIpsum + '
' - ); - $headerRow = $collapsible.find( 'tr:first' ); - $contentRow = $collapsible.find( 'tr:last' ); + var $collapsible = prepareCollapsible( + '' + + '' + + '' + + '' + + '
' + loremIpsum + '' + loremIpsum + '
' + loremIpsum + '' + loremIpsum + '
' + loremIpsum + '' + loremIpsum + '
' + ), + $headerRow = $collapsible.find( 'tr:first' ), + $contentRow = $collapsible.find( 'tr:last' ), + $toggle = $headerRow.find( 'td:last .mw-collapsible-toggle' ); - $toggle = $headerRow.find( 'td:last .mw-collapsible-toggle' ); assert.equal( $toggle.length, 1, 'toggle is added to last cell of first row' ); assert.assertTrue( $headerRow.is( ':visible' ), 'headerRow is visible' ); @@ -108,13 +104,11 @@ } ); function tableWithCaptionTest( $collapsible, assert ) { - var $caption, $headerRow, $contentRow, $toggle; + var $caption = $collapsible.find( 'caption' ), + $headerRow = $collapsible.find( 'tr:first' ), + $contentRow = $collapsible.find( 'tr:last' ), + $toggle = $caption.find( '.mw-collapsible-toggle' ); - $caption = $collapsible.find( 'caption' ); - $headerRow = $collapsible.find( 'tr:first' ); - $contentRow = $collapsible.find( 'tr:last' ); - - $toggle = $caption.find( '.mw-collapsible-toggle' ); assert.equal( $toggle.length, 1, 'toggle is added to the end of the caption' ); assert.assertTrue( $caption.is( ':visible' ), 'caption is visible' ); @@ -162,17 +156,16 @@ } ); function listTest( listType, assert ) { - var $collapsible, $toggleItem, $contentItem, $toggle; - $collapsible = prepareCollapsible( - '<' + listType + ' class="mw-collapsible">' + - '
  • ' + loremIpsum + '
  • ' + - '
  • ' + loremIpsum + '
  • ' + - '' - ); - $toggleItem = $collapsible.find( 'li.mw-collapsible-toggle-li:first-child' ); - $contentItem = $collapsible.find( 'li:last' ); - - $toggle = $toggleItem.find( '.mw-collapsible-toggle' ); + var $collapsible = prepareCollapsible( + '<' + listType + ' class="mw-collapsible">' + + '
  • ' + loremIpsum + '
  • ' + + '
  • ' + loremIpsum + '
  • ' + + '' + ), + $toggleItem = $collapsible.find( 'li.mw-collapsible-toggle-li:first-child' ), + $contentItem = $collapsible.find( 'li:last' ), + $toggle = $toggleItem.find( '.mw-collapsible-toggle' ); + assert.equal( $toggle.length, 1, 'toggle is present, added inside new zeroth list item' ); assert.assertTrue( $toggleItem.is( ':visible' ), 'toggleItem is visible' ); @@ -203,12 +196,11 @@ } ); QUnit.test( 'basic operation when synchronous (options.instantHide)', 2, function ( assert ) { - var $collapsible, $content; - $collapsible = prepareCollapsible( - '
    ' + loremIpsum + '
    ', - { instantHide: true } - ); - $content = $collapsible.find( '.mw-collapsible-content' ); + var $collapsible = prepareCollapsible( + '
    ' + loremIpsum + '
    ', + { instantHide: true } + ), + $content = $collapsible.find( '.mw-collapsible-content' ); assert.assertTrue( $content.is( ':visible' ), 'content is visible' ); @@ -218,36 +210,35 @@ } ); QUnit.test( 'mw-made-collapsible data added', 1, function ( assert ) { - var $collapsible; - $collapsible = prepareCollapsible( - '
    ' + loremIpsum + '
    ' - ); + var $collapsible = prepareCollapsible( + '
    ' + loremIpsum + '
    ' + ); + assert.equal( $collapsible.data( 'mw-made-collapsible' ), true, 'mw-made-collapsible data present' ); } ); QUnit.test( 'mw-collapsible added when missing', 1, function ( assert ) { - var $collapsible; - $collapsible = prepareCollapsible( - '
    ' + loremIpsum + '
    ' - ); + var $collapsible = prepareCollapsible( + '
    ' + loremIpsum + '
    ' + ); + assert.assertTrue( $collapsible.hasClass( 'mw-collapsible' ), 'mw-collapsible class present' ); } ); QUnit.test( 'mw-collapsed added when missing', 1, function ( assert ) { - var $collapsible; - $collapsible = prepareCollapsible( + var $collapsible = prepareCollapsible( '
    ' + loremIpsum + '
    ', - { collapsed: true } - ); + { collapsed: true } + ); + assert.assertTrue( $collapsible.hasClass( 'mw-collapsed' ), 'mw-collapsed class present' ); } ); QUnit.asyncTest( 'initial collapse (mw-collapsed class)', 2, function ( assert ) { - var $collapsible, $content; - $collapsible = prepareCollapsible( - '
    ' + loremIpsum + '
    ' - ); - $content = $collapsible.find( '.mw-collapsible-content' ); + var $collapsible = prepareCollapsible( + '
    ' + loremIpsum + '
    ' + ), + $content = $collapsible.find( '.mw-collapsible-content' ); // Synchronous - mw-collapsed should cause instantHide: true to be used on initial collapsing assert.assertTrue( $content.is( ':hidden' ), 'content is hidden' ); @@ -261,12 +252,11 @@ } ); QUnit.asyncTest( 'initial collapse (options.collapsed)', 2, function ( assert ) { - var $collapsible, $content; - $collapsible = prepareCollapsible( - '
    ' + loremIpsum + '
    ', - { collapsed: true } - ); - $content = $collapsible.find( '.mw-collapsible-content' ); + var $collapsible = prepareCollapsible( + '
    ' + loremIpsum + '
    ', + { collapsed: true } + ), + $content = $collapsible.find( '.mw-collapsible-content' ); // Synchronous - collapsed: true should cause instantHide: true to be used on initial collapsing assert.assertTrue( $content.is( ':hidden' ), 'content is hidden' ); @@ -280,19 +270,17 @@ } ); QUnit.test( 'clicks on links inside toggler pass through (options.linksPassthru)' , 2, function ( assert ) { - var $collapsible, $content; - - $collapsible = prepareCollapsible( - '
    ' + - '
    ' + - 'Toggle toggle toggle toggle' + - '
    ' + - '
    ' + loremIpsum + '
    ' + - '
    ', - // Can't do asynchronous because we're testing that the event *doesn't* happen - { instantHide: true } - ); - $content = $collapsible.find( '.mw-collapsible-content' ); + var $collapsible = prepareCollapsible( + '
    ' + + '
    ' + + 'Toggle toggle toggle toggle' + + '
    ' + + '
    ' + loremIpsum + '
    ' + + '
    ', + // Can't do asynchronous because we're testing that the event *doesn't* happen + { instantHide: true } + ), + $content = $collapsible.find( '.mw-collapsible-content' ); $collapsible.find( '.mw-collapsible-toggle a' ).trigger( 'click' ); assert.assertTrue( $content.is( ':visible' ), 'click event on link inside toggle passes through (content not toggled)' ); @@ -302,13 +290,12 @@ } ); QUnit.asyncTest( 'collapse/expand text (data-collapsetext, data-expandtext)', 2, function ( assert ) { - var $collapsible, $toggleLink; - $collapsible = prepareCollapsible( - '
    ' + - loremIpsum + - '
    ' - ); - $toggleLink = $collapsible.find( '.mw-collapsible-toggle a' ); + var $collapsible = prepareCollapsible( + '
    ' + + loremIpsum + + '
    ' + ), + $toggleLink = $collapsible.find( '.mw-collapsible-toggle a' ); assert.equal( $toggleLink.text(), 'Collapse me!', 'data-collapsetext is respected' ); @@ -321,12 +308,11 @@ } ); QUnit.asyncTest( 'collapse/expand text (options.collapseText, options.expandText)', 2, function ( assert ) { - var $collapsible, $toggleLink; - $collapsible = prepareCollapsible( - '
    ' + loremIpsum + '
    ', - { collapseText: 'Collapse me!', expandText: 'Expand me!' } - ); - $toggleLink = $collapsible.find( '.mw-collapsible-toggle a' ); + var $collapsible = prepareCollapsible( + '
    ' + loremIpsum + '
    ', + { collapseText: 'Collapse me!', expandText: 'Expand me!' } + ), + $toggleLink = $collapsible.find( '.mw-collapsible-toggle a' ); assert.equal( $toggleLink.text(), 'Collapse me!', 'options.collapseText is respected' );