Aleksey Bekh-Ivanov (WMDE) has uploaded a new change for review. (
https://gerrit.wikimedia.org/r/365604 )
Change subject: Remove empty arrays removal from serialized entity
......................................................................
Remove empty arrays removal from serialized entity
This code brings inconsistency. In API those keys are present, but
in wbEntity they don't.
Also, there should be a difference between "not present" and "empty list"
Change-Id: I4f75c396dfca382671844bf376d32a0726ce1a75
---
M repo/includes/ParserOutput/ParserOutputJsConfigBuilder.php
M repo/tests/phpunit/includes/ParserOutput/ParserOutputJsConfigBuilderTest.php
2 files changed, 9 insertions(+), 12 deletions(-)
git pull ssh://gerrit.wikimedia.org:29418/mediawiki/extensions/Wikibase
refs/changes/04/365604/1
diff --git a/repo/includes/ParserOutput/ParserOutputJsConfigBuilder.php
b/repo/includes/ParserOutput/ParserOutputJsConfigBuilder.php
index 08c5560..e8221f6 100644
--- a/repo/includes/ParserOutput/ParserOutputJsConfigBuilder.php
+++ b/repo/includes/ParserOutput/ParserOutputJsConfigBuilder.php
@@ -48,17 +48,7 @@
* @return string
*/
private function getSerializedEntity( EntityDocument $entity ) {
- $serialization = $this->entitySerializer->serialize( $entity );
-
- // Remove empty parts of the serialization (Added when Lib
Serializers were removed)
- // We could allow parts if we are sure it would not break
anything
- foreach ( $serialization as $key => $serializationPart ) {
- if ( is_array( $serializationPart ) && empty(
$serializationPart ) ) {
- unset( $serialization[$key] );
- }
- }
-
- return $serialization;
+ return $this->entitySerializer->serialize( $entity );
}
}
diff --git
a/repo/tests/phpunit/includes/ParserOutput/ParserOutputJsConfigBuilderTest.php
b/repo/tests/phpunit/includes/ParserOutput/ParserOutputJsConfigBuilderTest.php
index 1e2d144..784e664 100644
---
a/repo/tests/phpunit/includes/ParserOutput/ParserOutputJsConfigBuilderTest.php
+++
b/repo/tests/phpunit/includes/ParserOutput/ParserOutputJsConfigBuilderTest.php
@@ -136,7 +136,7 @@
}
private function getSerialization( EntityDocument $entity, PropertyId
$propertyId ) {
- return [
+ $serialization = [
'id' => $entity->getId()->getSerialization(),
'type' => $entity->getType(),
'labels' => [
@@ -149,6 +149,8 @@
'value' => 'Cake'
]
],
+ 'descriptions' => [],
+ 'aliases' => [],
'claims' => [
$propertyId->getSerialization() => [
[
@@ -167,6 +169,11 @@
],
],
];
+
+ if ( $entity instanceof Item ) {
+ $serialization['sitelinks'] = [];
+ }
+ return $serialization;
}
}
--
To view, visit https://gerrit.wikimedia.org/r/365604
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings
Gerrit-MessageType: newchange
Gerrit-Change-Id: I4f75c396dfca382671844bf376d32a0726ce1a75
Gerrit-PatchSet: 1
Gerrit-Project: mediawiki/extensions/Wikibase
Gerrit-Branch: master
Gerrit-Owner: Aleksey Bekh-Ivanov (WMDE) <[email protected]>
_______________________________________________
MediaWiki-commits mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits