Fix behaviour of namespaceSelector to match the documentation
authorjeroendedauw <jeroendedauw@gmail.com>
Fri, 5 Oct 2012 13:54:58 +0000 (15:54 +0200)
committerjeroendedauw <jeroendedauw@gmail.com>
Fri, 5 Oct 2012 14:19:03 +0000 (16:19 +0200)
Change-Id: I3d1bb232905095ae2d5177adc225025178d5f5a3

includes/Html.php
tests/phpunit/includes/HtmlTest.php

index 9fcdc52..f4a3b55 100644 (file)
@@ -810,6 +810,14 @@ class Html {
                        );
                }
 
+               if ( !array_key_exists( 'id', $selectAttribs ) ) {
+                       $selectAttribs['id'] = 'namespace';
+               }
+
+               if ( !array_key_exists( 'name', $selectAttribs ) ) {
+                       $selectAttribs['name'] = 'namespace';
+               }
+
                $ret = '';
                if ( isset( $params['label'] ) ) {
                        $ret .= Html::element(
index 6e936aa..05dea35 100644 (file)
@@ -239,7 +239,7 @@ class HtmlTest extends MediaWikiTestCase {
 
        function testNamespaceSelector() {
                $this->assertEquals(
-                       '<select>' . "\n" .
+                       '<select id="namespace" name="namespace">' . "\n" .
 '<option value="0">(Main)</option>' . "\n" .
 '<option value="1">Talk</option>' . "\n" .
 '<option value="2">User</option>' . "\n" .
@@ -290,8 +290,8 @@ class HtmlTest extends MediaWikiTestCase {
                );
 
                $this->assertEquals(
-                       '<label>Select a namespace:</label>&#160;' .
-'<select>' . "\n" .
+                       '<label for="namespace">Select a namespace:</label>&#160;' .
+'<select id="namespace" name="namespace">' . "\n" .
 '<option value="0">(Main)</option>' . "\n" .
 '<option value="1">Talk</option>' . "\n" .
 '<option value="2">User</option>' . "\n" .
@@ -318,7 +318,7 @@ class HtmlTest extends MediaWikiTestCase {
 
        function testCanFilterOutNamespaces() {
                $this->assertEquals(
-'<select>' . "\n" .
+'<select id="namespace" name="namespace">' . "\n" .
 '<option value="2">User</option>' . "\n" .
 '<option value="4">MyWiki</option>' . "\n" .
 '<option value="5">MyWiki Talk</option>' . "\n" .
@@ -340,7 +340,7 @@ class HtmlTest extends MediaWikiTestCase {
 
        function testCanDisableANamespaces() {
                $this->assertEquals(
-'<select>' . "\n" .
+'<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" .