jenkins-bot has submitted this change and it was merged. (
https://gerrit.wikimedia.org/r/330403 )
Change subject: Inject dependencies of ListSubscribers API module
......................................................................
Inject dependencies of ListSubscribers API module
Bug: T154574
Change-Id: Iddeb00cf47d85acccdc744accb5365d319334b2b
---
M repo/Wikibase.php
M repo/includes/Api/ListSubscribers.php
M repo/tests/phpunit/includes/Api/ListSubscribersTest.php
3 files changed, 35 insertions(+), 9 deletions(-)
Approvals:
WMDE-leszek: Looks good to me, approved
jenkins-bot: Verified
Thiemo Mättig (WMDE): Looks good to me, but someone else must approve
diff --git a/repo/Wikibase.php b/repo/Wikibase.php
index 40689e7..95dc6f3 100644
--- a/repo/Wikibase.php
+++ b/repo/Wikibase.php
@@ -177,7 +177,20 @@
$wgAPIModules['wbavailablebadges'] =
Wikibase\Repo\Api\AvailableBadges::class;
$wgAPIModules['wbcreateredirect'] =
Wikibase\Repo\Api\CreateRedirect::class;
$wgAPIListModules['wbsearch'] =
Wikibase\Repo\Api\QuerySearchEntities::class;
- $wgAPIListModules['wbsubscribers'] =
Wikibase\Repo\Api\ListSubscribers::class;
+ $wgAPIListModules['wbsubscribers'] = [
+ 'class' => Wikibase\Repo\Api\ListSubscribers::class,
+ 'factory' => function( $mainModule, $moduleName, $modulePrefix
= 'wbls' ) {
+ $wikibaseRepo =
\Wikibase\Repo\WikibaseRepo::getDefaultInstance();
+ $mediaWikiServices =
\MediaWiki\MediaWikiServices::getInstance();
+ return new Wikibase\Repo\Api\ListSubscribers(
+ $mainModule,
+ $moduleName,
+ $modulePrefix,
+ $wikibaseRepo->getEntityIdParser(),
+ $mediaWikiServices->getSiteLookup()
+ );
+ }
+ ];
// Special page registration
$wgSpecialPages['NewItem'] = function () {
diff --git a/repo/includes/Api/ListSubscribers.php
b/repo/includes/Api/ListSubscribers.php
index 84e72f6..a3fea8d 100644
--- a/repo/includes/Api/ListSubscribers.php
+++ b/repo/includes/Api/ListSubscribers.php
@@ -6,7 +6,6 @@
use ApiQueryBase;
use ApiQuery;
use ApiResult;
-use MediaWiki\MediaWikiServices;
use ResultWrapper;
use SiteLookup;
use stdClass;
@@ -43,18 +42,25 @@
* @param ApiQuery $mainModule
* @param string $moduleName
* @param string $modulePrefix
+ * @param EntityIdParser $idParser
+ * @param SiteLookup $siteLookup
*
* @see ApiBase::__construct
*/
- public function __construct( ApiQuery $mainModule, $moduleName,
$modulePrefix = 'wbls' ) {
+ public function __construct(
+ ApiQuery $mainModule,
+ $moduleName,
+ $modulePrefix,
+ EntityIdParser $idParser,
+ SiteLookup $siteLookup
+ ) {
parent::__construct( $mainModule, $moduleName, $modulePrefix );
$wikibaseRepo = WikibaseRepo::getDefaultInstance();
- $apiHelperFactory = $wikibaseRepo->getApiHelperFactory(
$this->getContext() );
- $mediaWikiServices = MediaWikiServices::getInstance();
- $this->errorReporter = $apiHelperFactory->getErrorReporter(
$this );
- $this->idParser = $wikibaseRepo->getEntityIdParser();
- $this->siteLookup = $mediaWikiServices->getSiteLookup();
+ $this->errorReporter = $wikibaseRepo->getApiHelperFactory(
$this->getContext() )
+ ->getErrorReporter( $this );
+ $this->idParser = $idParser;
+ $this->siteLookup = $siteLookup;
}
public function execute() {
diff --git a/repo/tests/phpunit/includes/Api/ListSubscribersTest.php
b/repo/tests/phpunit/includes/Api/ListSubscribersTest.php
index a0f81eb..b866847 100644
--- a/repo/tests/phpunit/includes/Api/ListSubscribersTest.php
+++ b/repo/tests/phpunit/includes/Api/ListSubscribersTest.php
@@ -5,9 +5,11 @@
use ApiMain;
use ApiQuery;
use FauxRequest;
+use MediaWiki\MediaWikiServices;
use MediaWikiLangTestCase;
use RequestContext;
use Wikibase\Repo\Api\ListSubscribers;
+use Wikibase\Repo\WikibaseRepo;
/**
* @covers Wikibase\Repo\Api\ListSubscribers
@@ -83,9 +85,14 @@
* @return array[]
*/
private function callApiModule( array $params ) {
+ $wikibaseRepo = WikibaseRepo::getDefaultInstance();
+ $mediaWikiServices = MediaWikiServices::getInstance();
$module = new ListSubscribers(
$this->getQueryModule( $params ),
- 'subscribers'
+ 'subscribers',
+ 'wbls',
+ $wikibaseRepo->getEntityIdParser(),
+ $mediaWikiServices->getSiteLookup()
);
$module->execute();
--
To view, visit https://gerrit.wikimedia.org/r/330403
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings
Gerrit-MessageType: merged
Gerrit-Change-Id: Iddeb00cf47d85acccdc744accb5365d319334b2b
Gerrit-PatchSet: 6
Gerrit-Project: mediawiki/extensions/Wikibase
Gerrit-Branch: master
Gerrit-Owner: Ladsgroup <[email protected]>
Gerrit-Reviewer: Daniel Kinzler <[email protected]>
Gerrit-Reviewer: Ladsgroup <[email protected]>
Gerrit-Reviewer: Thiemo Mättig (WMDE) <[email protected]>
Gerrit-Reviewer: WMDE-leszek <[email protected]>
Gerrit-Reviewer: jenkins-bot <>
_______________________________________________
MediaWiki-commits mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits