Lucas Werkmeister (WMDE) has uploaded a new change for review. (
https://gerrit.wikimedia.org/r/365090 )
Change subject: Fix exception thrown from ConnectionCheckerHelper
......................................................................
Fix exception thrown from ConnectionCheckerHelper
The values parsed in parseItemIdSnakValues can come from constraint
parameters and should therefore, for now, be treated like arbitrary user
input that’s not necessarily valid.
This is just a quick fix for T170599, not a proper solution for the
underlying problem.
Bug: T170599
Change-Id: I6bc6711e0061d0f28b26a5de97be689fa7ee3d28
---
M includes/ConstraintCheck/Helper/ConnectionCheckerHelper.php
M tests/phpunit/Checker/ConnectionChecker/ConnectionCheckerHelperTest.php
2 files changed, 9 insertions(+), 1 deletion(-)
git pull
ssh://gerrit.wikimedia.org:29418/mediawiki/extensions/WikibaseQualityConstraints
refs/changes/90/365090/1
diff --git a/includes/ConstraintCheck/Helper/ConnectionCheckerHelper.php
b/includes/ConstraintCheck/Helper/ConnectionCheckerHelper.php
index 9113385..f832dde 100644
--- a/includes/ConstraintCheck/Helper/ConnectionCheckerHelper.php
+++ b/includes/ConstraintCheck/Helper/ConnectionCheckerHelper.php
@@ -107,7 +107,11 @@
$ret[] = ItemIdSnakValue::noValue();
break;
default:
- $ret[] = ItemIdSnakValue::fromItemId(
new ItemId( strtoupper( $value ) ) );
+ try {
+ $ret[] =
ItemIdSnakValue::fromItemId( new ItemId( strtoupper( $value ) ) );
+ } catch ( InvalidArgumentException $e )
{
+ // ignore
+ }
break;
}
}
diff --git
a/tests/phpunit/Checker/ConnectionChecker/ConnectionCheckerHelperTest.php
b/tests/phpunit/Checker/ConnectionChecker/ConnectionCheckerHelperTest.php
index 78706c6..22ac73b 100644
--- a/tests/phpunit/Checker/ConnectionChecker/ConnectionCheckerHelperTest.php
+++ b/tests/phpunit/Checker/ConnectionChecker/ConnectionCheckerHelperTest.php
@@ -85,4 +85,8 @@
$this->assertNotNull(
$this->connectionCheckerHelper->findStatement( $this->statementList, 'P2',
'novalue' ) );
}
+ public function testHasClaimInvalidValue() {
+ $this->assertNull(
$this->connectionCheckerHelper->findStatement( $this->statementList, 'P1',
'invalid' ) );
+ }
+
}
--
To view, visit https://gerrit.wikimedia.org/r/365090
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings
Gerrit-MessageType: newchange
Gerrit-Change-Id: I6bc6711e0061d0f28b26a5de97be689fa7ee3d28
Gerrit-PatchSet: 1
Gerrit-Project: mediawiki/extensions/WikibaseQualityConstraints
Gerrit-Branch: master
Gerrit-Owner: Lucas Werkmeister (WMDE) <[email protected]>
_______________________________________________
MediaWiki-commits mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits