jenkins-bot has submitted this change and it was merged. Change subject: Fix ClaimDifference::equals implementation ......................................................................
Fix ClaimDifference::equals implementation The two added ->getArrayCopy() are the relevant change here. Everything else is just a little bit of clean up. I can split that to an other patch, if you like. Just tell me. Bug: T92487 Change-Id: I0a18cf832968c979b29da0f00d37267273b4635b --- M repo/includes/Diff/ClaimDifference.php M repo/tests/phpunit/includes/Diff/ClaimDifferTest.php 2 files changed, 16 insertions(+), 25 deletions(-) Approvals: JanZerebecki: Looks good to me, approved jenkins-bot: Verified diff --git a/repo/includes/Diff/ClaimDifference.php b/repo/includes/Diff/ClaimDifference.php index 6602702..ee25dd4 100644 --- a/repo/includes/Diff/ClaimDifference.php +++ b/repo/includes/Diff/ClaimDifference.php @@ -44,9 +44,12 @@ * @param Diff|null $referenceChanges * @param DiffOpChange|null $rankChange */ - public function __construct( DiffOpChange $mainSnakChange = null, Diff $qualifierChanges = null, - Diff $referenceChanges = null, DiffOpChange $rankChange = null ) { - + public function __construct( + DiffOpChange $mainSnakChange = null, + Diff $qualifierChanges = null, + Diff $referenceChanges = null, + DiffOpChange $rankChange = null + ) { $this->referenceChanges = $referenceChanges; $this->mainSnakChange = $mainSnakChange; $this->rankChange = $rankChange; @@ -61,7 +64,7 @@ * @return Diff */ public function getReferenceChanges() { - return $this->referenceChanges === null ? new Diff( array(), false ) : $this->referenceChanges; + return $this->referenceChanges ?: new Diff( array(), false ); } /** @@ -94,7 +97,7 @@ * @return Diff */ public function getQualifierChanges() { - return $this->qualifierChanges === null ? new Diff( array(), false ) : $this->qualifierChanges; + return $this->qualifierChanges ?: new Diff( array(), false ); } /** @@ -104,7 +107,7 @@ * * @param mixed $target * - * @return boolean + * @return bool */ public function equals( $target ) { if ( $target === $this ) { @@ -115,10 +118,11 @@ return false; } - return $this->getMainSnakChange() == $target->getMainSnakChange() - && $this->getRankChange() == $target->getRankChange() - && $this->getQualifierChanges() == $target->getQualifierChanges() - && $this->getReferenceChanges() == $target->getReferenceChanges(); + return $this->mainSnakChange == $target->mainSnakChange + && $this->rankChange == $target->rankChange + // FIXME: Use Diff::equals when released. + && $this->getQualifierChanges()->getArrayCopy() == $target->getQualifierChanges()->getArrayCopy() + && $this->getReferenceChanges()->getArrayCopy() == $target->getReferenceChanges()->getArrayCopy(); } /** @@ -127,7 +131,7 @@ * * @since 0.4 * - * @return boolean + * @return bool */ public function isAtomic() { $claimChanges = 0; diff --git a/repo/tests/phpunit/includes/Diff/ClaimDifferTest.php b/repo/tests/phpunit/includes/Diff/ClaimDifferTest.php index 4c60563..01c689f 100644 --- a/repo/tests/phpunit/includes/Diff/ClaimDifferTest.php +++ b/repo/tests/phpunit/includes/Diff/ClaimDifferTest.php @@ -111,25 +111,12 @@ /** * @dataProvider diffClaimsProvider - * - * @param Claim $oldClaim - * @param Claim $newClaim - * @param ClaimDifference $expected */ public function testDiffClaims( Claim $oldClaim, Claim $newClaim, ClaimDifference $expected ) { $differ = new ClaimDiffer( new OrderedListDiffer( new ComparableComparer() ) ); $actual = $differ->diffClaims( $oldClaim, $newClaim ); - $this->assertInstanceOf( 'Wikibase\Repo\Diff\ClaimDifference', $actual ); - - if ( !$expected->equals( $actual ) ) { - $this->assertEquals($expected, $actual); - } - - $this->assertTrue( - $expected->equals( $actual ), - 'Diffing the claims results in the correct ClaimDifference' - ); + $this->assertTrue( $expected->equals( $actual ) ); } } -- To view, visit https://gerrit.wikimedia.org/r/196193 To unsubscribe, visit https://gerrit.wikimedia.org/r/settings Gerrit-MessageType: merged Gerrit-Change-Id: I0a18cf832968c979b29da0f00d37267273b4635b Gerrit-PatchSet: 2 Gerrit-Project: mediawiki/extensions/Wikibase Gerrit-Branch: master Gerrit-Owner: Thiemo Mättig (WMDE) <thiemo.maet...@wikimedia.de> Gerrit-Reviewer: JanZerebecki <jan.wikime...@zerebecki.de> Gerrit-Reviewer: Jeroen De Dauw <jeroended...@gmail.com> Gerrit-Reviewer: jenkins-bot <> _______________________________________________ MediaWiki-commits mailing list MediaWiki-commits@lists.wikimedia.org https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits