Aude has uploaded a new change for review. ( https://gerrit.wikimedia.org/r/345279 )
Change subject: Introduce LexemeFieldDefinitions ...................................................................... Introduce LexemeFieldDefinitions per changes in Wikibase Change-Id: I8542479636cccf6a5aae597e34f88208af922214 --- M WikibaseLexeme.entitytypes.php M src/Content/LexemeHandler.php A src/Search/LexemeFieldDefinitions.php M tests/phpunit/mediawiki/Content/LexemeHandlerTest.php A tests/phpunit/mediawiki/Search/LexemeFieldDefinitionsTest.php 5 files changed, 57 insertions(+), 2 deletions(-) git pull ssh://gerrit.wikimedia.org:29418/mediawiki/extensions/WikibaseLexeme refs/changes/79/345279/1 diff --git a/WikibaseLexeme.entitytypes.php b/WikibaseLexeme.entitytypes.php index 3e2ff7f..3492e4c 100644 --- a/WikibaseLexeme.entitytypes.php +++ b/WikibaseLexeme.entitytypes.php @@ -30,6 +30,7 @@ use Wikibase\Lexeme\DataModel\Services\Diff\LexemeDiffer; use Wikibase\Lexeme\DataModel\Services\Diff\LexemePatcher; use Wikibase\Lexeme\Rdf\LexemeRdfBuilder; +use Wikibase\Lexeme\Search\LexemeFieldDefinitions; use Wikibase\Lexeme\Validators\LexemeValidatorFactory; use Wikibase\Lexeme\View\LexemeViewFactory; use Wikibase\Rdf\RdfVocabulary; @@ -83,7 +84,8 @@ $wikibaseRepo->getValidatorErrorLocalizer(), $wikibaseRepo->getEntityIdParser(), $wikibaseRepo->getEntityIdLookup(), - $wikibaseRepo->getLanguageFallbackLabelDescriptionLookupFactory() + $wikibaseRepo->getLanguageFallbackLabelDescriptionLookupFactory(), + new LexemeFieldDefinitions() ); }, 'entity-id-pattern' => LexemeId::PATTERN, diff --git a/src/Content/LexemeHandler.php b/src/Content/LexemeHandler.php index 2e3d4c1..dcff587 100644 --- a/src/Content/LexemeHandler.php +++ b/src/Content/LexemeHandler.php @@ -7,6 +7,7 @@ use Wikibase\DataModel\Entity\EntityIdParser; use Wikibase\EditEntityAction; use Wikibase\HistoryEntityAction; +use Wikibase\Lexeme\Search\LexemeFieldDefinitions; use Wikibase\Lib\Store\EntityContentDataCodec; use Wikibase\Lib\Store\LanguageFallbackLabelDescriptionLookupFactory; use Wikibase\Lexeme\Actions\ViewLexemeAction; @@ -44,6 +45,7 @@ * @param EntityIdParser $entityIdParser * @param EntityIdLookup $entityIdLookup * @param LanguageFallbackLabelDescriptionLookupFactory $labelLookupFactory + * @param LexemeFieldDefinitions $fieldDefinitions * @param callable|null $legacyExportFormatDetector */ public function __construct( @@ -55,6 +57,7 @@ EntityIdParser $entityIdParser, EntityIdLookup $entityIdLookup, LanguageFallbackLabelDescriptionLookupFactory $labelLookupFactory, + LexemeFieldDefinitions $fieldDefinitions, $legacyExportFormatDetector = null ) { parent::__construct( @@ -65,6 +68,7 @@ $constraintProvider, $errorLocalizer, $entityIdParser, + $fieldDefinitions, $legacyExportFormatDetector ); $this->entityIdLookup = $entityIdLookup; diff --git a/src/Search/LexemeFieldDefinitions.php b/src/Search/LexemeFieldDefinitions.php new file mode 100644 index 0000000..c44f1d9 --- /dev/null +++ b/src/Search/LexemeFieldDefinitions.php @@ -0,0 +1,25 @@ +<?php + +namespace Wikibase\Lexeme\Search; + +use Wikibase\Repo\Search\Elastic\Fields\FieldDefinitions; +use Wikibase\Repo\Search\Elastic\Fields\StatementCountField; + +/** + * @license GPL-2.0+ + * @author Katie Filbert < aude.w...@gmail.com > + */ +class LexemeFieldDefinitions implements FieldDefinitions { + + /** + * @return SearchIndexField[] + */ + public function getFields() { + $fields = [ + 'statement_count' => new StatementCountField() + ]; + + return $fields; + } + +} \ No newline at end of file diff --git a/tests/phpunit/mediawiki/Content/LexemeHandlerTest.php b/tests/phpunit/mediawiki/Content/LexemeHandlerTest.php index 6162f22..ba8e2cc 100644 --- a/tests/phpunit/mediawiki/Content/LexemeHandlerTest.php +++ b/tests/phpunit/mediawiki/Content/LexemeHandlerTest.php @@ -13,6 +13,7 @@ use Title; use Wikibase\DataModel\Entity\EntityIdParser; use Wikibase\DataModel\Services\Lookup\LabelDescriptionLookup; +use Wikibase\Lexeme\Search\LexemeFieldDefinitions; use Wikibase\Lib\Store\EntityContentDataCodec; use Wikibase\Lib\Store\LanguageFallbackLabelDescriptionLookupFactory; use Wikibase\Lexeme\Content\LexemeHandler; @@ -56,7 +57,8 @@ $this->getMock( ValidatorErrorLocalizer::class ), $this->getMock( EntityIdParser::class ), $this->getMock( EntityIdLookup::class ), - $labelLookupFactory + $labelLookupFactory, + new LexemeFieldDefinitions() ); } diff --git a/tests/phpunit/mediawiki/Search/LexemeFieldDefinitionsTest.php b/tests/phpunit/mediawiki/Search/LexemeFieldDefinitionsTest.php new file mode 100644 index 0000000..5b2a157 --- /dev/null +++ b/tests/phpunit/mediawiki/Search/LexemeFieldDefinitionsTest.php @@ -0,0 +1,22 @@ +<?php + +namespace Wikibase\Lexeme\Tests\MediaWiki\Content; + +use PHPUnit_Framework_TestCase; +use Wikibase\Lexeme\Search\LexemeFieldDefinitions; + +/** + * @license GPL-2.0+ + * @author Katie Filbert < aude.w...@gmail.com > + */ +class LexemeFieldDefinitionsTest extends PHPUnit_Framework_TestCase { + + public function testGetFields() { + $fieldDefinitions = new LexemeFieldDefinitions(); + + $expectedKeys = [ 'statement_count' ]; + + $this->assertSame( $expectedKeys, array_keys( $fieldDefinitions->getFields() ) ); + } + +} \ No newline at end of file -- To view, visit https://gerrit.wikimedia.org/r/345279 To unsubscribe, visit https://gerrit.wikimedia.org/r/settings Gerrit-MessageType: newchange Gerrit-Change-Id: I8542479636cccf6a5aae597e34f88208af922214 Gerrit-PatchSet: 1 Gerrit-Project: mediawiki/extensions/WikibaseLexeme Gerrit-Branch: master Gerrit-Owner: Aude <aude.w...@gmail.com> _______________________________________________ MediaWiki-commits mailing list MediaWiki-commits@lists.wikimedia.org https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits