split ns selector tests for filter / disable options
authorAntoine Musso <hashar@users.mediawiki.org>
Tue, 14 Feb 2012 09:59:59 +0000 (09:59 +0000)
committerAntoine Musso <hashar@users.mediawiki.org>
Tue, 14 Feb 2012 09:59:59 +0000 (09:59 +0000)
ping r111376

tests/phpunit/includes/HtmlTest.php

index 566152e..c3c7646 100644 (file)
@@ -265,19 +265,12 @@ class HtmlTest extends MediaWikiTestCase {
                        ),
                        'Basic namespace selector with custom values'
                );
-               $immovable = array();
-               $namespaces = $wgContLang->getNamespaces();
-               foreach ( $namespaces as $nsId => $nsName ) {
-                       if ( !MWNamespace::isMovable( intval( $nsId ) ) ) {
-                               $immovable[] = $nsId;
-                       }
                }
-               $this->assertEquals(
-                       '<select id="namespace" name="namespace">' . "\n" .
-'<option value="0">(Main)</option>' . "\n" .
-'<option value="1">Talk</option>' . "\n" .
+
+               function testCanFilterOutNamespaces() {
+                       $this->assertEquals(
+'<select id="namespace" name="namespace">' . "\n" .
 '<option value="2">User</option>' . "\n" .
-'<option value="3">User talk</option>' . "\n" .
 '<option value="4">MyWiki</option>' . "\n" .
 '<option value="5">MyWiki Talk</option>' . "\n" .
 '<option value="6">File</option>' . "\n" .
@@ -286,13 +279,40 @@ class HtmlTest extends MediaWikiTestCase {
 '<option value="9">MediaWiki talk</option>' . "\n" .
 '<option value="10">Template</option>' . "\n" .
 '<option value="11">Template talk</option>' . "\n" .
-'<option disabled="" value="14">Category</option>' . "\n" .
+'<option value="14">Category</option>' . "\n" .
 '<option value="15">Category talk</option>' . "\n" .
 '</select>',
                        Html::namespaceSelector(
-                               array( 'exclude' => array( 100, 101 ), 'disable' => $immovable )
+                               array( 'exclude' => array( 0, 1, 3, 100, 101 ) )
                        ),
-                       'Namespace selector without the custom namespace and immovable namespaces disabled.'
+                       'Namespace selector namespace filtering.'
+               );
+               }
+
+               function testCanDisableANamespaces() {
+                       $this->assertEquals(
+'<select id="namespace" name="namespace">' . "\n" .
+'<option disabled="" value="0">(Main)</option>' . "\n" .
+'<option disabled="" value="1">Talk</option>' . "\n" .
+'<option disabled="" value="2">User</option>' . "\n" .
+'<option disabled="" value="3">User talk</option>' . "\n" .
+'<option disabled="" value="4">MyWiki</option>' . "\n" .
+'<option value="5">MyWiki Talk</option>' . "\n" .
+'<option value="6">File</option>' . "\n" .
+'<option value="7">File talk</option>' . "\n" .
+'<option value="8">MediaWiki</option>' . "\n" .
+'<option value="9">MediaWiki talk</option>' . "\n" .
+'<option value="10">Template</option>' . "\n" .
+'<option value="11">Template talk</option>' . "\n" .
+'<option value="14">Category</option>' . "\n" .
+'<option value="15">Category talk</option>' . "\n" .
+'<option value="100">Custom</option>' . "\n" .
+'<option value="101">Custom talk</option>' . "\n" .
+'</select>',
+                       Html::namespaceSelector( array(
+                               'disable' => array( 0, 1, 2, 3, 4 )
+                       ) ),
+                       'Namespace selector namespace disabling'
                );
        }