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

Reply via email to