jenkins-bot has submitted this change and it was merged.
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
M repo/tests/phpunit/includes/specials/SpecialItemDisambiguationTest.php
4 files changed, 36 insertions(+), 15 deletions(-)
Approvals:
Hoo man: Looks good to me, approved
jenkins-bot: Verified
diff --git a/repo/includes/ItemDisambiguation.php
b/repo/includes/ItemDisambiguation.php
index 4d0716c..4f045ba 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
@@ -39,13 +45,20 @@
*
* @param string $searchLangCode The language the search was performed
for.
* @param string $userLangCode The user's interface language.
+ * @param LanguageNameLookup $languageNameLookup
* @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 +100,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 +117,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 +125,7 @@
$msg = wfMessage( 'wikibase-itemlink-userlang-wrapper' )
->rawParams(
- \Language::fetchLanguageName( $language,
$this->userLangCode ),
+ $this->languageNameLookup->getName( $language,
$this->userLangCode ),
$labelElement
);
@@ -143,7 +156,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..4b988ca 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\LanguageNameLookup;
/**
* @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 LanguageNameLookup(),
$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}'" );
}
}
diff --git
a/repo/tests/phpunit/includes/specials/SpecialItemDisambiguationTest.php
b/repo/tests/phpunit/includes/specials/SpecialItemDisambiguationTest.php
index 4e717e4..44ca5bb 100644
--- a/repo/tests/phpunit/includes/specials/SpecialItemDisambiguationTest.php
+++ b/repo/tests/phpunit/includes/specials/SpecialItemDisambiguationTest.php
@@ -103,11 +103,16 @@
protected function newSpecialPage() {
$page = new SpecialItemDisambiguation();
+ $languageNameLookup = $this->getMock(
'Wikibase\Lib\LanguageNameLookup' );
+ $languageNameLookup->expects( $this->any() )
+ ->method( 'getName' )
+ ->will( $this->returnValue( 'LANGUAGE NAME' ) );
+
$page->initServices(
$this->getTermIndex(),
$this->getEntityLookup(),
$this->getEntityTitleLookup(),
- $this->getMock( 'Wikibase\Lib\LanguageNameLookup' )
+ $languageNameLookup
);
return $page;
--
To view, visit https://gerrit.wikimedia.org/r/192776
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings
Gerrit-MessageType: merged
Gerrit-Change-Id: I436dede97667cfd4652143f857bc40af9269167c
Gerrit-PatchSet: 4
Gerrit-Project: mediawiki/extensions/Wikibase
Gerrit-Branch: master
Gerrit-Owner: Adrian Lang <[email protected]>
Gerrit-Reviewer: Addshore <[email protected]>
Gerrit-Reviewer: Adrian Lang <[email protected]>
Gerrit-Reviewer: Hoo man <[email protected]>
Gerrit-Reviewer: jenkins-bot <>
_______________________________________________
MediaWiki-commits mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits