Thiemo Mättig (WMDE) has uploaded a new change for review.

  https://gerrit.wikimedia.org/r/173828

Change subject: Replace some Claims with StatementList
......................................................................

Replace some Claims with StatementList

I wanted to replace some usages of the Claims class but
immediatelly lost interest when I realized I would have to add
dozens, if not hundrets of these pointless wrappers:
new Statement( new Claim( ... ) ... )

This starts horrifying me. Code that has to use these classes
gets more and more messy. This is in no way better than simply
continuing to use Claim and Claims.

See https://github.com/wmde/WikibaseDataModel/pull/268

Similar problem with
new StatementList( array( ... ) )
It should accept a single statement.

Change-Id: Ia9ce8770e05da1477c082c9f345ffe596489f564
---
M lib/tests/phpunit/changes/TestChanges.php
M repo/includes/api/EditEntity.php
M repo/tests/phpunit/includes/ChangeOp/ChangeOpStatementRankTest.php
3 files changed, 13 insertions(+), 17 deletions(-)


  git pull ssh://gerrit.wikimedia.org:29418/mediawiki/extensions/Wikibase 
refs/changes/28/173828/1

diff --git a/lib/tests/phpunit/changes/TestChanges.php 
b/lib/tests/phpunit/changes/TestChanges.php
index 9ad8b8d..0a67909 100644
--- a/lib/tests/phpunit/changes/TestChanges.php
+++ b/lib/tests/phpunit/changes/TestChanges.php
@@ -6,7 +6,6 @@
 use Wikibase\ChangeRow;
 use Wikibase\ChangesTable;
 use Wikibase\DataModel\Claim\Claim;
-use Wikibase\DataModel\Claim\Claims;
 use Wikibase\DataModel\Entity\Entity;
 use Wikibase\DataModel\Entity\Item;
 use Wikibase\DataModel\Entity\ItemId;
@@ -15,6 +14,7 @@
 use Wikibase\DataModel\SiteLink;
 use Wikibase\DataModel\Snak\PropertyNoValueSnak;
 use Wikibase\DataModel\Statement\Statement;
+use Wikibase\DataModel\Statement\StatementList;
 use Wikibase\DiffChange;
 use Wikibase\EntityChange;
 use Wikibase\EntityFactory;
@@ -178,13 +178,13 @@
                        $statement = new Statement( new Claim( $snak ) );
                        $statement->setGuid( 'TEST$test-guid' );
 
-                       $claims = new Claims( array( $statement ) );
-                       $new->setClaims( $claims );
+                       $statements = new StatementList( array( $statement ) );
+                       $new->setStatements( $statements );
                        $changes['add-claim'] = $changeFactory->newFromUpdate( 
EntityChange::UPDATE, $old, $new );
                        $old = $new->copy();
 
-                       $claims = new Claims();
-                       $new->setClaims( $claims );
+                       $statements = new StatementList();
+                       $new->setStatements( $statements );
                        $changes['remove-claim'] = 
$changeFactory->newFromUpdate( EntityChange::UPDATE, $old, $new );
                        $old = $new->copy();
 
diff --git a/repo/includes/api/EditEntity.php b/repo/includes/api/EditEntity.php
index 5c36393..7972482 100644
--- a/repo/includes/api/EditEntity.php
+++ b/repo/includes/api/EditEntity.php
@@ -181,11 +181,6 @@
                                }
                        }
                        $entity->clear();
-
-                       // bug 67791 (can be removed with DataModel 1.0)
-                       if ( method_exists( $entity, 'setClaims' ) ) {
-                               $entity->setClaims( new Claims() );
-                       }
                }
 
                // if we create a new property, make sure we set the datatype
diff --git a/repo/tests/phpunit/includes/ChangeOp/ChangeOpStatementRankTest.php 
b/repo/tests/phpunit/includes/ChangeOp/ChangeOpStatementRankTest.php
index 33cd84d..b75ad29 100644
--- a/repo/tests/phpunit/includes/ChangeOp/ChangeOpStatementRankTest.php
+++ b/repo/tests/phpunit/includes/ChangeOp/ChangeOpStatementRankTest.php
@@ -5,11 +5,13 @@
 use DataValues\StringValue;
 use InvalidArgumentException;
 use Wikibase\ChangeOp\ChangeOpStatementRank;
-use Wikibase\DataModel\Claim\Claims;
+use Wikibase\DataModel\Claim\Claim;
 use Wikibase\DataModel\Entity\Entity;
 use Wikibase\DataModel\Entity\Item;
 use Wikibase\DataModel\Entity\ItemId;
 use Wikibase\DataModel\Snak\PropertyValueSnak;
+use Wikibase\DataModel\Statement\Statement;
+use Wikibase\DataModel\Statement\StatementList;
 use Wikibase\Lib\ClaimGuidGenerator;
 
 /**
@@ -80,15 +82,14 @@
                $this->assertEquals( $rank, $expectedRank, "No reference with 
expected hash" );
        }
 
-       private function newItemWithClaim( $itemIdString, $snak ) {
+       private function newItemWithClaim( $itemIdString, $mainSnak ) {
                $item = Item::newEmpty();
                $item->setId( new ItemId( $itemIdString ) );
 
-               $claim = $item->newClaim( $snak );
-               $claim->setGuid( $itemIdString . 
'$D8499CDA-25E4-4334-AG03-A3290BCD9CQP' );
-               $claims = new Claims();
-               $claims->addClaim( $claim );
-               $item->setClaims( $claims );
+               $statement = new Statement( new Claim( $mainSnak ) );
+               $statement->setGuid( $itemIdString . 
'$D8499CDA-25E4-4334-AG03-A3290BCD9CQP' );
+               $statements = new StatementList( array( $statement ) );
+               $item->setStatements( $statements );
 
                return $item;
        }

-- 
To view, visit https://gerrit.wikimedia.org/r/173828
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings

Gerrit-MessageType: newchange
Gerrit-Change-Id: Ia9ce8770e05da1477c082c9f345ffe596489f564
Gerrit-PatchSet: 1
Gerrit-Project: mediawiki/extensions/Wikibase
Gerrit-Branch: master
Gerrit-Owner: Thiemo Mättig (WMDE) <[email protected]>

_______________________________________________
MediaWiki-commits mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits

Reply via email to