Thiemo Mättig (WMDE) has uploaded a new change for review. https://gerrit.wikimedia.org/r/177239
Change subject: Use 'item' string constant to avoid dependencies ...................................................................... Use 'item' string constant to avoid dependencies Change-Id: Ic351337fa19913d8247853fe3b250cbf7cc49994 --- M client/includes/WikibaseClient.php M lib/includes/EntityFactory.php M lib/includes/serializers/EntitySerializer.php M lib/tests/phpunit/entity/EntityFactoryTest.php M lib/tests/phpunit/formatters/EntityIdLinkFormatterTest.php M lib/tests/phpunit/formatters/EntityIdTitleFormatterTest.php M lib/tests/phpunit/store/TermPropertyLabelResolverTest.php M repo/includes/Validators/EntityConstraintProvider.php M repo/includes/Validators/TermValidatorFactory.php M repo/includes/WikibaseRepo.php M repo/includes/store/sql/EntityPerPageTable.php M repo/includes/store/sql/ItemsPerSiteBuilder.php M repo/tests/phpunit/includes/IO/EntityIdReaderTest.php M repo/tests/phpunit/includes/LabelDescriptionDuplicateDetectorTest.php M repo/tests/phpunit/includes/Validators/EntityConstraintProviderTest.php M repo/tests/phpunit/includes/Validators/TermValidatorFactoryTest.php M repo/tests/phpunit/includes/store/sql/EntityPerPageIdPagerTest.php 17 files changed, 35 insertions(+), 52 deletions(-) git pull ssh://gerrit.wikimedia.org:29418/mediawiki/extensions/Wikibase refs/changes/39/177239/1 diff --git a/client/includes/WikibaseClient.php b/client/includes/WikibaseClient.php index 6250f26..9d7bfd9 100644 --- a/client/includes/WikibaseClient.php +++ b/client/includes/WikibaseClient.php @@ -30,7 +30,6 @@ use Wikibase\DataModel\Entity\BasicEntityIdParser; use Wikibase\DataModel\Entity\DispatchingEntityIdParser; use Wikibase\DataModel\Entity\EntityIdParser; -use Wikibase\DataModel\Entity\Item; use Wikibase\DataModel\Entity\PropertyDataTypeLookup; use Wikibase\DirectSqlStore; use Wikibase\EntityFactory; @@ -582,7 +581,7 @@ */ public function getEntityFactory() { $entityClasses = array( - Item::ENTITY_TYPE => 'Wikibase\DataModel\Entity\Item', + 'item' => 'Wikibase\DataModel\Entity\Item', 'property' => 'Wikibase\DataModel\Entity\Property', ); @@ -661,7 +660,7 @@ public function getEntityChangeFactory() { //TODO: take this from a setting or registry. $changeClasses = array( - Item::ENTITY_TYPE => 'Wikibase\ItemChange', + 'item' => 'Wikibase\ItemChange', // Other types of entities will use EntityChange ); diff --git a/lib/includes/EntityFactory.php b/lib/includes/EntityFactory.php index b2b8df1..f42f4dd 100644 --- a/lib/includes/EntityFactory.php +++ b/lib/includes/EntityFactory.php @@ -5,7 +5,6 @@ use MWException; use OutOfBoundsException; use Wikibase\DataModel\Entity\Entity; -use Wikibase\DataModel\Entity\Item; /** * Factory for Entity objects. @@ -48,7 +47,7 @@ if ( $instance === false ) { $typeToClass = array( - Item::ENTITY_TYPE => 'Wikibase\DataModel\Entity\Item', + 'item' => 'Wikibase\DataModel\Entity\Item', 'property' => 'Wikibase\DataModel\Entity\Property', ); diff --git a/lib/includes/serializers/EntitySerializer.php b/lib/includes/serializers/EntitySerializer.php index cbb955c..e87894d 100644 --- a/lib/includes/serializers/EntitySerializer.php +++ b/lib/includes/serializers/EntitySerializer.php @@ -6,7 +6,6 @@ use Wikibase\DataModel\Claim\Claims; use Wikibase\DataModel\Entity\BasicEntityIdParser; use Wikibase\DataModel\Entity\Entity; -use Wikibase\DataModel\Entity\Item; use Wikibase\EntityFactory; /** @@ -96,7 +95,7 @@ // which currently allows all parameters to be null. $this->entityFactory = new EntityFactory( array( - Item::ENTITY_TYPE => 'Wikibase\DataModel\Entity\Item', + 'item' => 'Wikibase\DataModel\Entity\Item', 'property' => 'Wikibase\DataModel\Entity\Property', ) ); diff --git a/lib/tests/phpunit/entity/EntityFactoryTest.php b/lib/tests/phpunit/entity/EntityFactoryTest.php index 46f5cb3..5a94a64 100644 --- a/lib/tests/phpunit/entity/EntityFactoryTest.php +++ b/lib/tests/phpunit/entity/EntityFactoryTest.php @@ -2,7 +2,6 @@ namespace Wikibase\Test; -use Wikibase\DataModel\Entity\Item; use Wikibase\EntityFactory; /** @@ -21,7 +20,7 @@ $types = EntityFactory::singleton()->getEntityTypes(); $this->assertInternalType( 'array', $types ); - $this->assertTrue( in_array( Item::ENTITY_TYPE, $types ), "must contain item type" ); + $this->assertTrue( in_array( 'item', $types ), "must contain item type" ); $this->assertTrue( in_array( 'property', $types ), "must contain property type" ); } @@ -48,7 +47,7 @@ public static function provideNewEmpty() { return array( - array( Item::ENTITY_TYPE, 'Wikibase\DataModel\Entity\Item' ), + array( 'item', 'Wikibase\DataModel\Entity\Item' ), array( 'property', 'Wikibase\DataModel\Entity\Property' ), ); } diff --git a/lib/tests/phpunit/formatters/EntityIdLinkFormatterTest.php b/lib/tests/phpunit/formatters/EntityIdLinkFormatterTest.php index e89d702..bf9420d 100644 --- a/lib/tests/phpunit/formatters/EntityIdLinkFormatterTest.php +++ b/lib/tests/phpunit/formatters/EntityIdLinkFormatterTest.php @@ -7,7 +7,6 @@ use ValueFormatters\FormatterOptions; use Wikibase\DataModel\Entity\EntityId; use Wikibase\DataModel\Entity\EntityIdValue; -use Wikibase\DataModel\Entity\Item; use Wikibase\DataModel\Entity\ItemId; use Wikibase\DataModel\Entity\PropertyId; use Wikibase\Lib\EntityIdLinkFormatter; @@ -59,7 +58,7 @@ public function getTitleForId( EntityId $entityId ) { switch ( $entityId->getEntityType() ) { - case Item::ENTITY_TYPE: + case 'item': return Title::makeTitle( NS_MAIN, 'ITEM-TEST--' . $entityId->getSerialization() ); case 'property': return Title::makeTitle( NS_MAIN, 'PROPERTY-TEST--' . $entityId->getSerialization() ); diff --git a/lib/tests/phpunit/formatters/EntityIdTitleFormatterTest.php b/lib/tests/phpunit/formatters/EntityIdTitleFormatterTest.php index 0d07a2b..505c5d4 100644 --- a/lib/tests/phpunit/formatters/EntityIdTitleFormatterTest.php +++ b/lib/tests/phpunit/formatters/EntityIdTitleFormatterTest.php @@ -7,7 +7,6 @@ use ValueFormatters\FormatterOptions; use Wikibase\DataModel\Entity\EntityId; use Wikibase\DataModel\Entity\EntityIdValue; -use Wikibase\DataModel\Entity\Item; use Wikibase\DataModel\Entity\ItemId; use Wikibase\DataModel\Entity\PropertyId; use Wikibase\Lib\EntityIdTitleFormatter; @@ -59,7 +58,7 @@ public function getTitleForId( EntityId $entityId ) { switch ( $entityId->getEntityType() ) { - case Item::ENTITY_TYPE: + case 'item': return Title::makeTitle( NS_MAIN, 'ITEM-TEST--' . $entityId->getSerialization() ); case 'property': return Title::makeTitle( NS_MAIN, 'PROPERTY-TEST--' . $entityId->getSerialization() ); diff --git a/lib/tests/phpunit/store/TermPropertyLabelResolverTest.php b/lib/tests/phpunit/store/TermPropertyLabelResolverTest.php index 46aceb5..f2b385c 100644 --- a/lib/tests/phpunit/store/TermPropertyLabelResolverTest.php +++ b/lib/tests/phpunit/store/TermPropertyLabelResolverTest.php @@ -3,7 +3,6 @@ namespace Wikibase\Test; use HashBagOStuff; -use Wikibase\DataModel\Entity\Item; use Wikibase\DataModel\Entity\PropertyId; use Wikibase\PropertyLabelResolver; use Wikibase\Term; @@ -98,7 +97,7 @@ 'termType' => 'label', 'termLanguage' => 'en', 'entityId' => 2, - 'entityType' => Item::ENTITY_TYPE, // not a property + 'entityType' => 'item', // not a property 'termText' => 'Two', ) ), new Term( array( diff --git a/repo/includes/Validators/EntityConstraintProvider.php b/repo/includes/Validators/EntityConstraintProvider.php index 49bbc30..bd2d7de 100644 --- a/repo/includes/Validators/EntityConstraintProvider.php +++ b/repo/includes/Validators/EntityConstraintProvider.php @@ -2,7 +2,6 @@ namespace Wikibase\Validators; -use Wikibase\DataModel\Entity\Item; use Wikibase\LabelDescriptionDuplicateDetector; use Wikibase\Lib\Store\SiteLinkLookup; @@ -57,7 +56,7 @@ $validators[] = new LabelUniquenessValidator( $this->duplicateDetector ); break; - case Item::ENTITY_TYPE: + case 'item': $validators[] = new SiteLinkUniquenessValidator( $this->siteLinkLookup ); break; } @@ -85,7 +84,7 @@ case 'property': break; - case Item::ENTITY_TYPE: + case 'item': $validators[] = new LabelDescriptionUniquenessValidator( $this->duplicateDetector ); break; } diff --git a/repo/includes/Validators/TermValidatorFactory.php b/repo/includes/Validators/TermValidatorFactory.php index 414370d..d9682ce 100644 --- a/repo/includes/Validators/TermValidatorFactory.php +++ b/repo/includes/Validators/TermValidatorFactory.php @@ -5,7 +5,6 @@ use InvalidArgumentException; use ValueValidators\ValueValidator; use Wikibase\DataModel\Entity\EntityIdParser; -use Wikibase\DataModel\Entity\Item; use Wikibase\LabelDescriptionDuplicateDetector; use Wikibase\Lib\Store\SiteLinkLookup; @@ -87,7 +86,7 @@ //TODO: Make this configurable. Use a builder. Allow more types to register. switch ( $entityType ) { - case Item::ENTITY_TYPE: + case 'item': return new LabelDescriptionUniquenessValidator( $this->duplicateDetector ); default: diff --git a/repo/includes/WikibaseRepo.php b/repo/includes/WikibaseRepo.php index 4f6b3fa..d2136ce 100644 --- a/repo/includes/WikibaseRepo.php +++ b/repo/includes/WikibaseRepo.php @@ -20,7 +20,6 @@ use Wikibase\DataModel\Entity\BasicEntityIdParser; use Wikibase\DataModel\Entity\DispatchingEntityIdParser; use Wikibase\DataModel\Entity\EntityIdParser; -use Wikibase\DataModel\Entity\Item; use Wikibase\DataModel\Entity\PropertyDataTypeLookup; use Wikibase\EntityFactory; use Wikibase\EntityParserOutputGeneratorFactory; @@ -244,7 +243,7 @@ public function getEntityChangeFactory() { //TODO: take this from a setting or registry. $changeClasses = array( - Item::ENTITY_TYPE => 'Wikibase\ItemChange', + 'item' => 'Wikibase\ItemChange', // Other types of entities will use EntityChange ); @@ -769,7 +768,7 @@ public function getContentModelMappings() { // @TODO: We should have smth. like this for namespaces too $map = array( - Item::ENTITY_TYPE => CONTENT_MODEL_WIKIBASE_ITEM, + 'item' => CONTENT_MODEL_WIKIBASE_ITEM, 'property' => CONTENT_MODEL_WIKIBASE_PROPERTY ); @@ -783,7 +782,7 @@ */ public function getEntityFactory() { $entityClasses = array( - Item::ENTITY_TYPE => 'Wikibase\DataModel\Entity\Item', + 'item' => 'Wikibase\DataModel\Entity\Item', 'property' => 'Wikibase\DataModel\Entity\Property', ); diff --git a/repo/includes/store/sql/EntityPerPageTable.php b/repo/includes/store/sql/EntityPerPageTable.php index 0fbc5d6..9a5dec1 100644 --- a/repo/includes/store/sql/EntityPerPageTable.php +++ b/repo/includes/store/sql/EntityPerPageTable.php @@ -7,7 +7,6 @@ use InvalidArgumentException; use Wikibase\DataModel\Entity\EntityId; use Wikibase\DataModel\Entity\EntityIdParser; -use Wikibase\DataModel\Entity\Item; use Wikibase\DataModel\Entity\ItemId; use Wikibase\DataModel\LegacyIdInterpreter; use Wikibase\Repo\Store\EntityPerPage; @@ -296,7 +295,7 @@ $conditions = array( 'ips_site_page IS NULL' ); - $conditions['epp_entity_type'] = Item::ENTITY_TYPE; + $conditions['epp_entity_type'] = 'item'; $joinConditions = 'ips_item_id = epp_entity_id'; diff --git a/repo/includes/store/sql/ItemsPerSiteBuilder.php b/repo/includes/store/sql/ItemsPerSiteBuilder.php index aed1b17..46f3daf 100644 --- a/repo/includes/store/sql/ItemsPerSiteBuilder.php +++ b/repo/includes/store/sql/ItemsPerSiteBuilder.php @@ -3,7 +3,6 @@ namespace Wikibase\Repo\Store\SQL; use Wikibase\DataModel\Entity\EntityId; -use Wikibase\DataModel\Entity\Item; use Wikibase\Lib\Reporting\MessageReporter; use Wikibase\Lib\Store\EntityLookup; use Wikibase\Lib\Store\SiteLinkTable; @@ -93,7 +92,7 @@ private function rebuildSiteLinks( array $entityIds ) { $c = 0; foreach ( $entityIds as $entityId ) { - if ( !$entityId->getEntityType() === Item::ENTITY_TYPE ) { + if ( !$entityId->getEntityType() === 'item' ) { // Just in case someone is using a EntityIdPager which doesn't filter non-Items continue; } diff --git a/repo/tests/phpunit/includes/IO/EntityIdReaderTest.php b/repo/tests/phpunit/includes/IO/EntityIdReaderTest.php index 0f5b08a..255a210 100644 --- a/repo/tests/phpunit/includes/IO/EntityIdReaderTest.php +++ b/repo/tests/phpunit/includes/IO/EntityIdReaderTest.php @@ -4,7 +4,6 @@ use Wikibase\DataModel\Entity\BasicEntityIdParser; use Wikibase\DataModel\Entity\EntityId; -use Wikibase\DataModel\Entity\Item; use Wikibase\DataModel\Entity\ItemId; use Wikibase\DataModel\Entity\PropertyId; use Wikibase\Repo\IO\EntityIdReader; @@ -78,7 +77,7 @@ 'EntityIdReaderTest.txt', null, 2, array( $q1, $p2 ) ), 'limit and filter' => array( - 'EntityIdReaderTest.txt', Item::ENTITY_TYPE, 1, array( $q1 ) + 'EntityIdReaderTest.txt', 'item', 1, array( $q1 ) ), ); } @@ -114,7 +113,7 @@ ), 'limit and filter' => array( 'EntityIdReaderTest.txt', - Item::ENTITY_TYPE, + 'item', 1, array( array( $q1 ), diff --git a/repo/tests/phpunit/includes/LabelDescriptionDuplicateDetectorTest.php b/repo/tests/phpunit/includes/LabelDescriptionDuplicateDetectorTest.php index 397ec33..3b0110d 100644 --- a/repo/tests/phpunit/includes/LabelDescriptionDuplicateDetectorTest.php +++ b/repo/tests/phpunit/includes/LabelDescriptionDuplicateDetectorTest.php @@ -4,7 +4,6 @@ use ValueValidators\Error; use ValueValidators\Result; -use Wikibase\DataModel\Entity\Item; use Wikibase\DataModel\Entity\ItemId; use Wikibase\LabelDescriptionDuplicateDetector; use Wikibase\Term; @@ -28,7 +27,7 @@ 'termType' => Term::TYPE_LABEL, 'termLanguage' => 'en', 'entityId' => 42, - 'entityType' => Item::ENTITY_TYPE, + 'entityType' => 'item', 'termText' => 'item label', ) ); @@ -36,7 +35,7 @@ 'termType' => Term::TYPE_DESCRIPTION, 'termLanguage' => 'en', 'entityId' => 42, - 'entityType' => Item::ENTITY_TYPE, + 'entityType' => 'item', 'termText' => 'item description', ) ); @@ -79,7 +78,7 @@ return array( 'no label conflict' => array( $world, - Item::ENTITY_TYPE, + 'item', array( 'en' => 'foo' ), null, null, @@ -88,7 +87,7 @@ 'label conflict' => array( $world, - Item::ENTITY_TYPE, + 'item', array( 'en' => 'item label' ), null, null, @@ -106,7 +105,7 @@ 'ignored label conflict' => array( $world, - Item::ENTITY_TYPE, + 'item', array( 'en' => 'item label' ), null, new ItemId( 'Q42' ), @@ -115,7 +114,7 @@ 'no label/description conflict' => array( $world, - Item::ENTITY_TYPE, + 'item', array( 'en' => 'item label' ), array(), null, @@ -124,7 +123,7 @@ 'label/description conflict' => array( $world, - Item::ENTITY_TYPE, + 'item', array( 'en' => 'item label' ), array( 'en' => 'item description' ), null, @@ -133,7 +132,7 @@ 'ignored label/description conflict' => array( $world, - Item::ENTITY_TYPE, + 'item', array( 'en' => 'item label' ), array( 'en' => 'item description' ), new ItemId( 'Q42' ), diff --git a/repo/tests/phpunit/includes/Validators/EntityConstraintProviderTest.php b/repo/tests/phpunit/includes/Validators/EntityConstraintProviderTest.php index 38a20b5..4644ea2 100644 --- a/repo/tests/phpunit/includes/Validators/EntityConstraintProviderTest.php +++ b/repo/tests/phpunit/includes/Validators/EntityConstraintProviderTest.php @@ -2,7 +2,6 @@ namespace Wikibase\Validators\Test; -use Wikibase\DataModel\Entity\Item; use Wikibase\Validators\EntityConstraintProvider; /** @@ -29,17 +28,17 @@ public function testGetUpdateValidators() { $provider = $this->getEntityConstraintProvider(); - $validators = $provider->getUpdateValidators( Item::ENTITY_TYPE ); + $validators = $provider->getUpdateValidators( 'item' ); $this->assertValidators( $validators ); } public function testGetCreationValidators() { $provider = $this->getEntityConstraintProvider(); - $validators = $provider->getCreationValidators( Item::ENTITY_TYPE ); + $validators = $provider->getCreationValidators( 'item' ); $this->assertValidators( $validators ); // Creation validators must be a superset of update validators - $updateValidators = $provider->getUpdateValidators( Item::ENTITY_TYPE ); + $updateValidators = $provider->getUpdateValidators( 'item' ); $this->assertContainsAll( $updateValidators, $validators ); } diff --git a/repo/tests/phpunit/includes/Validators/TermValidatorFactoryTest.php b/repo/tests/phpunit/includes/Validators/TermValidatorFactoryTest.php index ca222df..95c7119 100644 --- a/repo/tests/phpunit/includes/Validators/TermValidatorFactoryTest.php +++ b/repo/tests/phpunit/includes/Validators/TermValidatorFactoryTest.php @@ -3,7 +3,6 @@ namespace Wikibase\Test; use Wikibase\DataModel\Entity\BasicEntityIdParser; -use Wikibase\DataModel\Entity\Item; use Wikibase\DataModel\Entity\ItemId; use Wikibase\DataModel\Term\AliasGroupList; use Wikibase\DataModel\Term\Fingerprint; @@ -43,7 +42,7 @@ public function testGetFingerprintValidator() { $builders = $this->newFactory( 20, array( 'ja', 'ru' ) ); - $validator = $builders->getFingerprintValidator( Item::ENTITY_TYPE ); + $validator = $builders->getFingerprintValidator( 'item' ); $this->assertInstanceOf( 'Wikibase\Validators\FingerprintValidator', $validator ); @@ -87,7 +86,7 @@ public function testGetLabelValidator() { $builders = $this->newFactory( 8, array( 'en' ) ); - $validator = $builders->getLabelValidator( Item::ENTITY_TYPE ); + $validator = $builders->getLabelValidator( 'item' ); $this->assertInstanceOf( 'ValueValidators\ValueValidator', $validator ); @@ -114,7 +113,7 @@ public function testGetDescriptionValidator() { $builders = $this->newFactory( 8, array( 'en' ) ); - $validator = $builders->getDescriptionValidator( Item::ENTITY_TYPE ); + $validator = $builders->getDescriptionValidator( 'item' ); $this->assertInstanceOf( 'ValueValidators\ValueValidator', $validator ); @@ -126,7 +125,7 @@ public function testGetAliasValidator() { $builders = $this->newFactory( 8, array( 'en' ) ); - $validator = $builders->getAliasValidator( Item::ENTITY_TYPE ); + $validator = $builders->getAliasValidator( 'item' ); $this->assertInstanceOf( 'ValueValidators\ValueValidator', $validator ); diff --git a/repo/tests/phpunit/includes/store/sql/EntityPerPageIdPagerTest.php b/repo/tests/phpunit/includes/store/sql/EntityPerPageIdPagerTest.php index 27cbc53..8adf4c7 100644 --- a/repo/tests/phpunit/includes/store/sql/EntityPerPageIdPagerTest.php +++ b/repo/tests/phpunit/includes/store/sql/EntityPerPageIdPagerTest.php @@ -3,7 +3,6 @@ namespace Wikibase\Test; use Wikibase\DataModel\Entity\EntityId; -use Wikibase\DataModel\Entity\Item; use Wikibase\DataModel\Entity\ItemId; use Wikibase\DataModel\Entity\PropertyId; use Wikibase\Repo\Store\SQL\EntityPerPageIdPager; @@ -116,7 +115,7 @@ ), 'limit and filter' => array( array( $item, $property, $item2 ), - Item::ENTITY_TYPE, + 'item', 1, array( array( $item ), -- To view, visit https://gerrit.wikimedia.org/r/177239 To unsubscribe, visit https://gerrit.wikimedia.org/r/settings Gerrit-MessageType: newchange Gerrit-Change-Id: Ic351337fa19913d8247853fe3b250cbf7cc49994 Gerrit-PatchSet: 1 Gerrit-Project: mediawiki/extensions/Wikibase Gerrit-Branch: master Gerrit-Owner: Thiemo Mättig (WMDE) <thiemo.maet...@wikimedia.de> _______________________________________________ MediaWiki-commits mailing list MediaWiki-commits@lists.wikimedia.org https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits