Ladsgroup has uploaded a new change for review. (
https://gerrit.wikimedia.org/r/394653 )
Change subject: Use statement usage tracking to find affected pages
......................................................................
Use statement usage tracking to find affected pages
Bug: T176413
Change-Id: Ie7b0409a926b52e892a8eda59b769b3941a552dd
---
M client/includes/Changes/AffectedPagesFinder.php
M client/tests/phpunit/includes/Changes/AffectedPagesFinderTest.php
2 files changed, 25 insertions(+), 2 deletions(-)
git pull ssh://gerrit.wikimedia.org:29418/mediawiki/extensions/Wikibase
refs/changes/53/394653/1
diff --git a/client/includes/Changes/AffectedPagesFinder.php
b/client/includes/Changes/AffectedPagesFinder.php
index 9b0850e..e847bb6 100644
--- a/client/includes/Changes/AffectedPagesFinder.php
+++ b/client/includes/Changes/AffectedPagesFinder.php
@@ -158,7 +158,15 @@
$aspects = array_merge( $aspects, $descriptionsAspects
);
}
- if ( ( $diffAspects->getStatementChanges() !== [] ) || (
$diffAspects->hasOtherChanges() !== false ) ) {
+ if ( $diffAspects->getStatementChanges() !== [] ) {
+ $statementAspects = $this->getChangedStatementAspects(
+ $diffAspects->getStatementChanges()
+ );
+ $aspects = array_merge( $aspects, $statementAspects );
+ }
+
+
+ if ( $diffAspects->hasOtherChanges() !== false ) {
$aspects[] = EntityUsage::OTHER_USAGE;
}
@@ -171,6 +179,21 @@
}
/**
+ * @param string[] $diff
+ *
+ * @return string[]
+ */
+ private function getChangedStatementAspects( array $diff ) {
+ $aspects = [];
+
+ foreach ( $diff as $propertyId ) {
+ $aspects[] = EntityUsage::makeAspectKey(
EntityUsage::STATEMENT_USAGE, $propertyId );
+ }
+
+ return $aspects;
+ }
+
+ /**
* @param string $aspect
* @param string[] $diff
*
diff --git a/client/tests/phpunit/includes/Changes/AffectedPagesFinderTest.php
b/client/tests/phpunit/includes/Changes/AffectedPagesFinderTest.php
index f166828..5ce984d 100644
--- a/client/tests/phpunit/includes/Changes/AffectedPagesFinderTest.php
+++ b/client/tests/phpunit/includes/Changes/AffectedPagesFinderTest.php
@@ -199,7 +199,7 @@
];
$cases['statement change on Q1'] = [
- [ EntityUsage::OTHER_USAGE ],
+ [ EntityUsage::STATEMENT_USAGE . '.P5' ],
$changeFactory->newFromUpdate(
EntityChange::UPDATE,
new Item( $q1 ),
--
To view, visit https://gerrit.wikimedia.org/r/394653
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings
Gerrit-MessageType: newchange
Gerrit-Change-Id: Ie7b0409a926b52e892a8eda59b769b3941a552dd
Gerrit-PatchSet: 1
Gerrit-Project: mediawiki/extensions/Wikibase
Gerrit-Branch: master
Gerrit-Owner: Ladsgroup <[email protected]>
_______________________________________________
MediaWiki-commits mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits