jenkins-bot has submitted this change and it was merged. ( https://gerrit.wikimedia.org/r/405689 )
Change subject: Fix violation of using package private serializer implementations ...................................................................... Fix violation of using package private serializer implementations These two implementations are marked as "package private", which means it is actually forbidden to instantiate or use them in any way that sidesteps the public methods provided by the serializer factory. This is not some personal opinion or anything I came up with, but clearly marked in the contract of the Wikibase DataModel Serialization component. Bug: T178994 Change-Id: I4cb1591c626c4b0a8b6b32a4dc1da7244baa3c5a --- M src/DataModel/Serialization/FormSerializer.php M tests/phpunit/composer/DataModel/Serialization/ExternalLexemeSerializerTest.php M tests/phpunit/composer/DataModel/Serialization/StorageLexemeSerializerTest.php 3 files changed, 9 insertions(+), 17 deletions(-) Approvals: WMDE-leszek: Looks good to me, approved jenkins-bot: Verified diff --git a/src/DataModel/Serialization/FormSerializer.php b/src/DataModel/Serialization/FormSerializer.php index e7350b5..facc3cc 100644 --- a/src/DataModel/Serialization/FormSerializer.php +++ b/src/DataModel/Serialization/FormSerializer.php @@ -2,9 +2,8 @@ namespace Wikibase\Lexeme\DataModel\Serialization; +use Serializers\Serializer; use Wikibase\DataModel\Entity\ItemId; -use Wikibase\DataModel\Serializers\StatementListSerializer; -use Wikibase\DataModel\Serializers\TermListSerializer; use Wikibase\Lexeme\DataModel\Form; /** @@ -13,18 +12,18 @@ class FormSerializer { /** - * @var TermListSerializer + * @var Serializer */ private $termListSerializer; /** - * @var StatementListSerializer + * @var Serializer */ private $statementListSerializer; public function __construct( - TermListSerializer $termListSerializer, - StatementListSerializer $statementListSerializer + Serializer $termListSerializer, + Serializer $statementListSerializer ) { $this->termListSerializer = $termListSerializer; $this->statementListSerializer = $statementListSerializer; diff --git a/tests/phpunit/composer/DataModel/Serialization/ExternalLexemeSerializerTest.php b/tests/phpunit/composer/DataModel/Serialization/ExternalLexemeSerializerTest.php index d71a3b2..898e263 100644 --- a/tests/phpunit/composer/DataModel/Serialization/ExternalLexemeSerializerTest.php +++ b/tests/phpunit/composer/DataModel/Serialization/ExternalLexemeSerializerTest.php @@ -4,10 +4,9 @@ use PHPUnit_Framework_TestCase; use Serializers\Exceptions\SerializationException; +use Serializers\Serializer; use Wikibase\DataModel\Entity\Item; use Wikibase\DataModel\Entity\PropertyId; -use Wikibase\DataModel\Serializers\StatementListSerializer; -use Wikibase\DataModel\Serializers\TermListSerializer; use Wikibase\DataModel\Snak\PropertyNoValueSnak; use Wikibase\DataModel\Statement\StatementList; use Wikibase\DataModel\Term\TermList; @@ -27,17 +26,13 @@ class ExternalLexemeSerializerTest extends PHPUnit_Framework_TestCase { private function newSerializer() { - $statementListSerializer = $this->getMockBuilder( StatementListSerializer::class ) - ->disableOriginalConstructor() - ->getMock(); + $statementListSerializer = $this->getMock( Serializer::class ); $statementListSerializer->method( 'serialize' ) ->will( $this->returnCallback( function ( StatementList $statementList ) { return implode( '|', $statementList->getPropertyIds() ); } ) ); - $termListSerializer = $this->getMockBuilder( TermListSerializer::class ) - ->disableOriginalConstructor() - ->getMock(); + $termListSerializer = $this->getMock( Serializer::class ); $termListSerializer->method( 'serialize' ) ->will( $this->returnCallback( function ( TermList $termList ) { return $termList->toTextArray(); diff --git a/tests/phpunit/composer/DataModel/Serialization/StorageLexemeSerializerTest.php b/tests/phpunit/composer/DataModel/Serialization/StorageLexemeSerializerTest.php index 1648362..114f22e 100644 --- a/tests/phpunit/composer/DataModel/Serialization/StorageLexemeSerializerTest.php +++ b/tests/phpunit/composer/DataModel/Serialization/StorageLexemeSerializerTest.php @@ -13,8 +13,6 @@ use Wikibase\DataModel\Entity\EntityIdValue; use Wikibase\DataModel\Entity\ItemId; use Wikibase\DataModel\Entity\PropertyId; -use Wikibase\DataModel\Serializers\TermListSerializer; -use Wikibase\DataModel\Serializers\TermSerializer; use Wikibase\DataModel\Snak\PropertyNoValueSnak; use Wikibase\DataModel\Snak\PropertySomeValueSnak; use Wikibase\DataModel\Snak\PropertyValueSnak; @@ -228,7 +226,7 @@ SerializerFactory::OPTION_DEFAULT ); return new StorageLexemeSerializer( - new TermListSerializer( new TermSerializer(), false ), + $serializerFactory->newTermListSerializer(), $serializerFactory->newStatementListSerializer() ); } -- To view, visit https://gerrit.wikimedia.org/r/405689 To unsubscribe, visit https://gerrit.wikimedia.org/r/settings Gerrit-MessageType: merged Gerrit-Change-Id: I4cb1591c626c4b0a8b6b32a4dc1da7244baa3c5a Gerrit-PatchSet: 2 Gerrit-Project: mediawiki/extensions/WikibaseLexeme Gerrit-Branch: master Gerrit-Owner: Thiemo Kreuz (WMDE) <thiemo.kr...@wikimedia.de> Gerrit-Reviewer: Jeroen De Dauw <jeroended...@gmail.com> Gerrit-Reviewer: Ladsgroup <ladsgr...@gmail.com> Gerrit-Reviewer: WMDE-leszek <leszek.mani...@wikimedia.de> Gerrit-Reviewer: jenkins-bot <> _______________________________________________ MediaWiki-commits mailing list MediaWiki-commits@lists.wikimedia.org https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits