Adrian Lang has uploaded a new change for review.

  https://gerrit.wikimedia.org/r/192776

Change subject: Pass LanguageNameLookup to ItemDisambiguation
......................................................................

Pass LanguageNameLookup to ItemDisambiguation

Change-Id: I436dede97667cfd4652143f857bc40af9269167c
---
M repo/includes/ItemDisambiguation.php
M repo/includes/specials/SpecialItemDisambiguation.php
M repo/tests/phpunit/includes/ItemDisambiguationTest.php
3 files changed, 29 insertions(+), 14 deletions(-)


  git pull ssh://gerrit.wikimedia.org:29418/mediawiki/extensions/Wikibase 
refs/changes/76/192776/1

diff --git a/repo/includes/ItemDisambiguation.php 
b/repo/includes/ItemDisambiguation.php
index 4d0716c..9b9b678 100644
--- a/repo/includes/ItemDisambiguation.php
+++ b/repo/includes/ItemDisambiguation.php
@@ -2,9 +2,10 @@
 
 namespace Wikibase;
 
-use Language;
+use Html;
 use Wikibase\DataModel\Entity\Item;
 use Wikibase\Lib\EntityIdFormatter;
+use Wikibase\Lib\LanguageNameLookup;
 
 /**
  * Class representing the disambiguation of a list of WikibaseItems.
@@ -20,14 +21,19 @@
 class ItemDisambiguation {
 
        /**
-        * @var string
+        * @var LanguageNameLookup
         */
-       protected $searchLangCode;
+       private $languageNameLookup;
 
        /**
         * @var string
         */
-       protected $userLangCode;
+       private $searchLangCode;
+
+       /**
+        * @var string
+        */
+       private $userLangCode;
 
        /**
         * @var EntityIdFormatter
@@ -41,11 +47,17 @@
         * @param string $userLangCode The user's interface language.
         * @param EntityIdFormatter $linkFormatter A formatter for generating 
HTML links for a given EntityId.
         */
-       public function __construct( $searchLangCode, $userLangCode, 
EntityIdFormatter $linkFormatter ) {
+       public function __construct(
+               $searchLangCode,
+               $userLangCode,
+               LanguageNameLookup $languageNameLookup,
+               EntityIdFormatter $linkFormatter
+       ) {
                $this->searchLangCode = $searchLangCode;
                $this->userLangCode = $userLangCode;
 
                $this->linkFormatter = $linkFormatter;
+               $this->languageNameLookup = $languageNameLookup;
        }
 
        /**
@@ -87,7 +99,7 @@
 
                $result .= $this->getDescriptionHtml( $item, $userLang );
 
-               $result = \Html::rawElement( 'li', array( 'class' => 
'wikibase-disambiguation' ), $result );
+               $result = Html::rawElement( 'li', array( 'class' => 
'wikibase-disambiguation' ), $result );
 
                return $result;
        }
@@ -104,7 +116,7 @@
        private function getLabelHtml( Item $item, $language ) {
                $label = $item->getLabel( $language );
 
-               $labelElement = \Html::element(
+               $labelElement = Html::element(
                        'span',
                        array( 'class' => 'wb-itemlink-query-lang', 'lang' => 
$language ),
                        $label
@@ -112,7 +124,7 @@
 
                $msg = wfMessage( 'wikibase-itemlink-userlang-wrapper' )
                        ->rawParams(
-                               \Language::fetchLanguageName( $language, 
$this->userLangCode ),
+                               $this->languageNameLookup->getName( $language, 
$this->userLangCode ),
                                $labelElement
                        );
 
@@ -143,7 +155,7 @@
 
                        $html = $userLabel ? ' ' . $idLabel : '';
                } else {
-                       $descriptionElement = \Html::element(
+                       $descriptionElement = Html::element(
                                'span',
                                array( 'class' => 'wb-itemlink-description' ),
                                $description
diff --git a/repo/includes/specials/SpecialItemDisambiguation.php 
b/repo/includes/specials/SpecialItemDisambiguation.php
index c2e03f4..2f79603 100644
--- a/repo/includes/specials/SpecialItemDisambiguation.php
+++ b/repo/includes/specials/SpecialItemDisambiguation.php
@@ -4,12 +4,10 @@
 
 use Html;
 use Language;
-use ValueFormatters\FormatterOptions;
-use ValueFormatters\ValueFormatter;
 use Wikibase\DataModel\Entity\Item;
 use Wikibase\ItemDisambiguation;
-use Wikibase\Lib\LanguageNameLookup;
 use Wikibase\Lib\EntityIdHtmlLinkFormatter;
+use Wikibase\Lib\LanguageNameLookup;
 use Wikibase\Lib\Store\EntityLookup;
 use Wikibase\Lib\Store\EntityRetrievingTermLookup;
 use Wikibase\Lib\Store\EntityTitleLookup;
@@ -187,6 +185,7 @@
                $disambiguationList = new ItemDisambiguation(
                        $languageCode,
                        $this->getContext()->getLanguage()->getCode(),
+                       $this->languageNameLookup,
                        $linkFormatter
                );
 
diff --git a/repo/tests/phpunit/includes/ItemDisambiguationTest.php 
b/repo/tests/phpunit/includes/ItemDisambiguationTest.php
index 6c56456..47d59bc 100644
--- a/repo/tests/phpunit/includes/ItemDisambiguationTest.php
+++ b/repo/tests/phpunit/includes/ItemDisambiguationTest.php
@@ -2,9 +2,12 @@
 
 namespace Wikibase\Test;
 
+use MediaWikiTestCase;
+use PHPUnit_Framework_TestCase;
 use Wikibase\DataModel\Entity\Item;
 use Wikibase\DataModel\Entity\ItemId;
 use Wikibase\ItemDisambiguation;
+use Wikibase\Lib\Store\LanguageLabelLookup;
 
 /**
  * @covers Wikibase\ItemDisambiguation
@@ -17,7 +20,7 @@
  * @licence GNU GPL v2+
  * @author Daniel Kinzler
  */
-class ItemDisambiguationTest extends \PHPUnit_Framework_TestCase {
+class ItemDisambiguationTest extends PHPUnit_Framework_TestCase {
 
        /**
         * @param string $searchLanguageCode
@@ -37,6 +40,7 @@
                return new ItemDisambiguation(
                        $searchLanguageCode,
                        $userLanguageCode,
+                       new LanguageLabelLookup(),
                        $entityIdFormatter
                );
        }
@@ -123,7 +127,7 @@
                $html = $disambig->getHTML( $items );
 
                foreach ( $matchers as $key => $matcher ) {
-                       \MediaWikiTestCase::assertTag( $matcher, $html, "Failed 
to match HTML output with tag '{$key}'" );
+                       MediaWikiTestCase::assertTag( $matcher, $html, "Failed 
to match HTML output with tag '{$key}'" );
                }
        }
 

-- 
To view, visit https://gerrit.wikimedia.org/r/192776
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings

Gerrit-MessageType: newchange
Gerrit-Change-Id: I436dede97667cfd4652143f857bc40af9269167c
Gerrit-PatchSet: 1
Gerrit-Project: mediawiki/extensions/Wikibase
Gerrit-Branch: master
Gerrit-Owner: Adrian Lang <[email protected]>

_______________________________________________
MediaWiki-commits mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits

Reply via email to