Thiemo Mättig (WMDE) has uploaded a new change for review.
https://gerrit.wikimedia.org/r/188360
Change subject: Fix/add PHPDoc tags to avoid unknown method warnings
......................................................................
Fix/add PHPDoc tags to avoid unknown method warnings
This fixes some of the "unknown method called" issues reported by
PHPStorm's code analysis.
* Add @var type hints to avoid warnings.
* Add missing PHPDoc tags.
* Fix/make PHPDoc tags more specific.
Change-Id: I700d0ed225c5ab47dedf45f44ba61d263ab59241
---
M client/includes/OtherProjectsSitesGenerator.php
M client/tests/phpunit/includes/Hooks/DataUpdateHookHandlersTest.php
M lib/includes/store/sql/TermSqlIndex.php
M repo/includes/EntitySearchTextGenerator.php
M repo/includes/View/SiteLinksView.php
M repo/includes/api/LinkTitles.php
M repo/tests/phpunit/includes/store/sql/TermSqlIndexTest.php
7 files changed, 29 insertions(+), 8 deletions(-)
git pull ssh://gerrit.wikimedia.org:29418/mediawiki/extensions/Wikibase
refs/changes/60/188360/1
diff --git a/client/includes/OtherProjectsSitesGenerator.php
b/client/includes/OtherProjectsSitesGenerator.php
index 94bc2b1..b3b84dd 100644
--- a/client/includes/OtherProjectsSitesGenerator.php
+++ b/client/includes/OtherProjectsSitesGenerator.php
@@ -84,6 +84,7 @@
}
$currentLanguageCode = $this->getLocalSite()->getLanguageCode();
+ /** @var Site $site */
foreach ( $siteGroupList as $site ) {
if ( $site->getLanguageCode() === $currentLanguageCode
) {
return $site;
diff --git a/client/tests/phpunit/includes/Hooks/DataUpdateHookHandlersTest.php
b/client/tests/phpunit/includes/Hooks/DataUpdateHookHandlersTest.php
index 168f992..ab6ef54 100644
--- a/client/tests/phpunit/includes/Hooks/DataUpdateHookHandlersTest.php
+++ b/client/tests/phpunit/includes/Hooks/DataUpdateHookHandlersTest.php
@@ -9,6 +9,7 @@
use Wikibase\Client\Store\UsageUpdater;
use Wikibase\Client\Usage\EntityUsage;
use Wikibase\Client\Usage\ParserOutputUsageAccumulator;
+use Wikibase\DataModel\Entity\EntityId;
use Wikibase\DataModel\Entity\ItemId;
use Wikibase\NamespaceChecker;
use Wikibase\Settings;
@@ -42,11 +43,11 @@
/**
* @param Title $title
- * @param array $expectedUsages
+ * @param array[]|null $expectedUsages
*
* @return UsageUpdater
*/
- private function newUsageUpdater( Title $title, array $expectedUsages
= null ) {
+ private function newUsageUpdater( Title $title, array $expectedUsages =
null ) {
$usageUpdater = $this->getMockBuilder(
'Wikibase\Client\Store\UsageUpdater' )
->disableOriginalConstructor()
->getMock();
@@ -64,9 +65,15 @@
return $usageUpdater;
}
+ /**
+ * @param array[] $expectedUsages
+ *
+ * @return EntityUsage[]
+ */
private function makeEntityUsageList( array $expectedUsages ) {
$entityUsageList = array();
+ /** @var EntityId[] $entityIds */
foreach ( $expectedUsages as $aspect => $entityIds ) {
foreach ( $entityIds as $id ) {
$key = $id->getSerialization() . '#' . $aspect;
@@ -79,7 +86,7 @@
/**
* @param Title $title
- * @param array $expectedUsages
+ * @param array[]|null $expectedUsages
* @param array $settings
*
* @return DataUpdateHookHandlers
@@ -99,7 +106,7 @@
}
/**
- * @param array $usages
+ * @param array[]|null $usages
*
* @return ParserOutput
*/
@@ -137,7 +144,7 @@
}
/**
- * @param array $usages
+ * @param array[]|null $usages
*
* @return Parser
*/
@@ -176,6 +183,8 @@
/**
* @dataProvider provideDoArticleEditUpdates
+ * @param Title $title
+ * @param array[]|null $usage
*/
public function testDoArticleEditUpdates( Title $title, $usage ) {
$title->resetArticleID( 23 );
diff --git a/lib/includes/store/sql/TermSqlIndex.php
b/lib/includes/store/sql/TermSqlIndex.php
index 9f797e4..21f9f73 100644
--- a/lib/includes/store/sql/TermSqlIndex.php
+++ b/lib/includes/store/sql/TermSqlIndex.php
@@ -520,7 +520,7 @@
* @param string|null $entityType
* @param array $options
*
- * @return array
+ * @return Term[]
*/
public function getMatchingTerms( array $terms, $termType = null,
$entityType = null, array $options = array() ) {
if ( empty( $terms ) ) {
@@ -764,7 +764,7 @@
*
* @param Iterator|array $obtainedTerms PHP fails for not having a
common iterator/array thing :<0
*
- * @return array
+ * @return Term[]
*/
protected function buildTermResult( $obtainedTerms ) {
wfProfileIn( __METHOD__ );
diff --git a/repo/includes/EntitySearchTextGenerator.php
b/repo/includes/EntitySearchTextGenerator.php
index 5ffce2f..9f209a4 100644
--- a/repo/includes/EntitySearchTextGenerator.php
+++ b/repo/includes/EntitySearchTextGenerator.php
@@ -3,6 +3,7 @@
namespace Wikibase\Repo;
use Wikibase\DataModel\Entity\EntityDocument;
+use Wikibase\DataModel\Term\AliasGroup;
use Wikibase\DataModel\Term\AliasGroupList;
use Wikibase\DataModel\Term\Fingerprint;
use Wikibase\DataModel\Term\FingerprintProvider;
@@ -58,6 +59,7 @@
protected function getAllAliasesText( AliasGroupList $aliasGroups ) {
$text = '';
+ /** @var AliasGroup $aliasGroup */
foreach ( $aliasGroups as $aliasGroup ) {
$text .= "\n" . implode( "\n",
$aliasGroup->getAliases() );
}
diff --git a/repo/includes/View/SiteLinksView.php
b/repo/includes/View/SiteLinksView.php
index e56e6bf..afdd595 100644
--- a/repo/includes/View/SiteLinksView.php
+++ b/repo/includes/View/SiteLinksView.php
@@ -200,7 +200,7 @@
$safetyCopy = $siteLinksForTable; // keep a shallow copy
$sortOk = usort(
$siteLinksForTable,
- function( $a, $b ) {
+ function( array $a, array $b ) {
return strcmp( $a['siteLink']->getSiteId(),
$b['siteLink']->getSiteId() );
}
);
diff --git a/repo/includes/api/LinkTitles.php b/repo/includes/api/LinkTitles.php
index fcef462..bfea635 100644
--- a/repo/includes/api/LinkTitles.php
+++ b/repo/includes/api/LinkTitles.php
@@ -4,6 +4,7 @@
use ApiBase;
use ApiMain;
+use Site;
use SiteList;
use Status;
use Wikibase\DataModel\Entity\Item;
@@ -71,11 +72,13 @@
// Sites are already tested through allowed params ;)
$sites = $this->siteLinkTargetProvider->getSiteList(
$this->siteLinkGroups );
+ /** @var Site $fromSite */
list( $fromSite, $fromPage ) =
$this->getSiteAndNormalizedPageName(
$sites,
$params['fromsite'],
$params['fromtitle']
);
+ /** @var Site $toSite */
list( $toSite, $toPage ) = $this->getSiteAndNormalizedPageName(
$sites,
$params['tosite'],
@@ -153,6 +156,8 @@
* @param SiteList $sites
* @param string $site
* @param string $pageTitle
+ *
+ * @return array( Site $site, string $pageName )
*/
private function getSiteAndNormalizedPageName( SiteList $sites, $site,
$pageTitle ) {
$siteObj = $sites->getSite( $site );
diff --git a/repo/tests/phpunit/includes/store/sql/TermSqlIndexTest.php
b/repo/tests/phpunit/includes/store/sql/TermSqlIndexTest.php
index 5ad6332..c83b7fe 100644
--- a/repo/tests/phpunit/includes/store/sql/TermSqlIndexTest.php
+++ b/repo/tests/phpunit/includes/store/sql/TermSqlIndexTest.php
@@ -154,6 +154,10 @@
/**
* @dataProvider getMatchingTermsOptionsProvider
+ * @param Fingerprint $fingerprint
+ * @param Term[] $queryTerms
+ * @param array $options
+ * @param Term[] $expected
*/
public function testGetMatchingTerms_options( Fingerprint $fingerprint,
array $queryTerms, array $options, array $expected ) {
$termIndex = $this->getTermIndex();
--
To view, visit https://gerrit.wikimedia.org/r/188360
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings
Gerrit-MessageType: newchange
Gerrit-Change-Id: I700d0ed225c5ab47dedf45f44ba61d263ab59241
Gerrit-PatchSet: 1
Gerrit-Project: mediawiki/extensions/Wikibase
Gerrit-Branch: master
Gerrit-Owner: Thiemo Mättig (WMDE) <[email protected]>
_______________________________________________
MediaWiki-commits mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits