Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 1 addition & 3 deletions src/Diff/Internal/FingerprintPatcher.php
Original file line number Diff line number Diff line change
Expand Up @@ -4,12 +4,10 @@

use Diff\Patcher\PatcherException;
use Wikibase\DataModel\Services\Diff\EntityDiff;
use Wikibase\DataModel\Services\Diff\TermListPatcher;
use Wikibase\DataModel\Term\Fingerprint;

/**
* TODO: Class should be public.
* TODO: Should this support actual edit conflict detection?
*
* Package private.
*
* @since 1.0
Expand Down
3 changes: 0 additions & 3 deletions src/Diff/Internal/SiteLinkListPatcher.php
Original file line number Diff line number Diff line change
Expand Up @@ -10,9 +10,6 @@
use Wikibase\DataModel\SiteLinkList;

/**
* TODO: Class should be public.
* TODO: Should this support actual edit conflict detection?
*
* Package private.
*
* @license GPL-2.0+
Expand Down
1 change: 0 additions & 1 deletion src/Diff/ItemDiffer.php
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,6 @@
use Wikibase\DataModel\Entity\EntityDocument;
use Wikibase\DataModel\Entity\Item;
use Wikibase\DataModel\Entity\ItemId;
use Wikibase\DataModel\Services\Diff\Internal\StatementListDiffer;
use Wikibase\DataModel\SiteLinkList;

/**
Expand Down
5 changes: 2 additions & 3 deletions src/Diff/ItemPatcher.php
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,6 @@
use Wikibase\DataModel\Entity\Item;
use Wikibase\DataModel\Services\Diff\Internal\FingerprintPatcher;
use Wikibase\DataModel\Services\Diff\Internal\SiteLinkListPatcher;
use Wikibase\DataModel\Services\Diff\Internal\StatementListPatcher;

/**
* @since 1.0
Expand Down Expand Up @@ -76,10 +75,10 @@ private function patchItem( Item $item, EntityDiff $patch ) {
) );
}

$item->setStatements( $this->statementListPatcher->getPatchedStatementList(
$this->statementListPatcher->patchStatementList(
$item->getStatements(),
$patch->getClaimsDiff()
) );
);
}

}
1 change: 0 additions & 1 deletion src/Diff/PropertyDiffer.php
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,6 @@
use InvalidArgumentException;
use Wikibase\DataModel\Entity\EntityDocument;
use Wikibase\DataModel\Entity\Property;
use Wikibase\DataModel\Services\Diff\Internal\StatementListDiffer;
use Wikibase\DataModel\Statement\StatementList;

/**
Expand Down
5 changes: 2 additions & 3 deletions src/Diff/PropertyPatcher.php
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,6 @@
use Wikibase\DataModel\Entity\EntityDocument;
use Wikibase\DataModel\Entity\Property;
use Wikibase\DataModel\Services\Diff\Internal\FingerprintPatcher;
use Wikibase\DataModel\Services\Diff\Internal\StatementListPatcher;

/**
* @since 1.0
Expand Down Expand Up @@ -62,10 +61,10 @@ private function assertIsProperty( EntityDocument $property ) {
private function patchProperty( Property $property, EntityDiff $patch ) {
$this->fingerprintPatcher->patchFingerprint( $property->getFingerprint(), $patch );

$property->setStatements( $this->statementListPatcher->getPatchedStatementList(
$this->statementListPatcher->patchStatementList(
$property->getStatements(),
$patch->getClaimsDiff()
) );
);
}

}
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
<?php

namespace Wikibase\DataModel\Services\Diff\Internal;
namespace Wikibase\DataModel\Services\Diff;

use Diff\Differ\MapDiffer;
use Diff\DiffOp\Diff\Diff;
Expand All @@ -9,11 +9,7 @@
use Wikibase\DataModel\Statement\StatementList;

/**
* TODO: Class must be public.
*
* Package private.
*
* @since 1.0
* @since 3.6
*
* @license GPL-2.0+
* @author Jeroen De Dauw < jeroendedauw@gmail.com >
Expand Down
Original file line number Diff line number Diff line change
@@ -1,24 +1,18 @@
<?php

namespace Wikibase\DataModel\Services\Diff\Internal;
namespace Wikibase\DataModel\Services\Diff;

use Diff\DiffOp\Diff\Diff;
use Diff\DiffOp\DiffOp;
use Diff\DiffOp\DiffOpAdd;
use Diff\DiffOp\DiffOpChange;
use Diff\DiffOp\DiffOpRemove;
use Diff\Patcher\PatcherException;
use InvalidArgumentException;
use Wikibase\DataModel\Statement\Statement;
use Wikibase\DataModel\Statement\StatementList;

/**
* TODO: Class must be public.
* TODO: Should this support actual edit conflict detection?
*
* Package private.
*
* @since 1.0
* @since 3.6
*
* @license GPL-2.0+
* @author Jeroen De Dauw < jeroendedauw@gmail.com >
Expand Down Expand Up @@ -103,19 +97,4 @@ private function changeStatement( StatementList $statements, $oldGuid, Statement
}
}

/**
* @deprecated since 3.6, use patchStatementList instead
*
* @param StatementList $statements
* @param Diff $patch
*
* @throws InvalidArgumentException
* @return StatementList
*/
public function getPatchedStatementList( StatementList $statements, Diff $patch ) {
$patched = clone $statements;
$this->patchStatementList( $patched, $patch );
return $patched;
}

}
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
<?php

namespace Wikibase\DataModel\Services\Diff\Internal;
namespace Wikibase\DataModel\Services\Diff;

use Diff\DiffOp\AtomicDiffOp;
use Diff\DiffOp\Diff\Diff;
Expand All @@ -11,8 +11,6 @@
use Wikibase\DataModel\Term\TermList;

/**
* Package private.
*
* @since 3.6
*
* @license GPL-2.0+
Expand Down
2 changes: 1 addition & 1 deletion tests/unit/Diff/EntityDiffTest.php
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@
use Diff\DiffOp\DiffOpRemove;
use PHPUnit_Framework_TestCase;
use Wikibase\DataModel\Services\Diff\EntityDiff;
use Wikibase\DataModel\Services\Diff\Internal\StatementListDiffer;
use Wikibase\DataModel\Services\Diff\StatementListDiffer;
use Wikibase\DataModel\Snak\PropertyNoValueSnak;
use Wikibase\DataModel\Statement\Statement;
use Wikibase\DataModel\Statement\StatementList;
Expand Down
Original file line number Diff line number Diff line change
@@ -1,19 +1,19 @@
<?php

namespace Wikibase\DataModel\Services\Tests\Diff\Internal;
namespace Wikibase\DataModel\Services\Tests\Diff;

use DataValues\StringValue;
use Diff\DiffOp\Diff\Diff;
use Diff\DiffOp\DiffOpAdd;
use Diff\DiffOp\DiffOpChange;
use Diff\DiffOp\DiffOpRemove;
use Wikibase\DataModel\Services\Diff\Internal\StatementListDiffer;
use Wikibase\DataModel\Services\Diff\StatementListDiffer;
use Wikibase\DataModel\Snak\PropertyValueSnak;
use Wikibase\DataModel\Statement\Statement;
use Wikibase\DataModel\Statement\StatementList;

/**
* @covers Wikibase\DataModel\Services\Diff\Internal\StatementListDiffer
* @covers Wikibase\DataModel\Services\Diff\StatementListDiffer
*
* @license GPL-2.0+
* @author Jeroen De Dauw < jeroendedauw@gmail.com >
Expand Down
Original file line number Diff line number Diff line change
@@ -1,21 +1,21 @@
<?php

namespace Wikibase\DataModel\Services\Tests\Diff\Internal;
namespace Wikibase\DataModel\Services\Tests\Diff;

use DataValues\StringValue;
use Diff\DiffOp\Diff\Diff;
use Diff\DiffOp\DiffOpAdd;
use Diff\DiffOp\DiffOpChange;
use Diff\DiffOp\DiffOpRemove;
use Wikibase\DataModel\Services\Diff\Internal\StatementListPatcher;
use Wikibase\DataModel\Services\Diff\StatementListPatcher;
use Wikibase\DataModel\Snak\PropertyNoValueSnak;
use Wikibase\DataModel\Snak\PropertySomeValueSnak;
use Wikibase\DataModel\Snak\PropertyValueSnak;
use Wikibase\DataModel\Statement\Statement;
use Wikibase\DataModel\Statement\StatementList;

/**
* @covers Wikibase\DataModel\Services\Diff\Internal\StatementListPatcher
* @covers Wikibase\DataModel\Services\Diff\StatementListPatcher
*
* @license GPL-2.0+
* @author Jeroen De Dauw < jeroendedauw@gmail.com >
Expand Down Expand Up @@ -225,10 +225,10 @@ public function statementOrderProvider() {
*/
public function testStatementOrder( StatementList $statements, Diff $patch, array $expectedGuids ) {
$patcher = new StatementListPatcher();
$patchedStatements = $patcher->getPatchedStatementList( $statements, $patch );
$patcher->patchStatementList( $statements, $patch );

$guids = array();
foreach ( $patchedStatements->toArray() as $statement ) {
foreach ( $statements->toArray() as $statement ) {
$guids[] = $statement->getGuid();
}
$this->assertSame( $expectedGuids, $guids );
Expand All @@ -240,11 +240,14 @@ public function testGivenEmptyDiff_listIsReturnedAsIs() {
$this->assertListResultsFromPatch( $statements, $statements, new Diff() );
}

private function assertListResultsFromPatch( StatementList $expected, StatementList $original, Diff $patch ) {
private function assertListResultsFromPatch(
StatementList $expected,
StatementList $statements,
Diff $patch
) {
$patcher = new StatementListPatcher();
$clone = clone $original;
$this->assertEquals( $expected, $patcher->getPatchedStatementList( $original, $patch ) );
$this->assertEquals( $clone, $original, 'original must not change' );
$patcher->patchStatementList( $statements, $patch );
$this->assertEquals( $expected, $statements );
}

public function testFoo() {
Expand Down
Original file line number Diff line number Diff line change
@@ -1,18 +1,18 @@
<?php

namespace Wikibase\DataModel\Services\Tests\Diff\Internal;
namespace Wikibase\DataModel\Services\Tests\Diff;

use Diff\DiffOp\Diff\Diff;
use Diff\DiffOp\DiffOpAdd;
use Diff\DiffOp\DiffOpChange;
use Diff\DiffOp\DiffOpRemove;
use PHPUnit_Framework_TestCase;
use Wikibase\DataModel\Services\Diff\Internal\TermListPatcher;
use Wikibase\DataModel\Services\Diff\TermListPatcher;
use Wikibase\DataModel\Term\Term;
use Wikibase\DataModel\Term\TermList;

/**
* @covers Wikibase\DataModel\Services\Diff\Internal\TermListPatcher
* @covers Wikibase\DataModel\Services\Diff\TermListPatcher
*
* @license GPL-2.0+
* @author Bene* < benestar.wikimedia@gmail.com >
Expand Down