WikidataBuilder has uploaded a new change for review.
https://gerrit.wikimedia.org/r/323378
Change subject: New Wikidata Build - 2016-11-24T10:00:01+0000
......................................................................
New Wikidata Build - 2016-11-24T10:00:01+0000
Change-Id: I3f11faa1e17fc6ef615dc7242b9444f62d638cb7
---
M composer.lock
M extensions/Wikibase/client/i18n/eu.json
M
extensions/Wikibase/client/includes/DataAccess/Scribunto/Scribunto_LuaWikibaseEntityLibrary.php
M
extensions/Wikibase/client/includes/DataAccess/Scribunto/Scribunto_LuaWikibaseLibrary.php
M
extensions/Wikibase/client/includes/DataAccess/Scribunto/SnakSerializationRenderer.php
M
extensions/Wikibase/client/includes/DataAccess/Scribunto/WikibaseLuaEntityBindings.php
M
extensions/Wikibase/client/includes/DataAccess/Scribunto/mw.wikibase.entity.lua
M extensions/Wikibase/client/includes/DataAccess/Scribunto/mw.wikibase.lua
M
extensions/Wikibase/client/tests/phpunit/includes/DataAccess/DataAccessSnakFormatterOutputFormatTest.php
M
extensions/Wikibase/client/tests/phpunit/includes/DataAccess/Scribunto/LuaWikibaseLibraryTests.lua
M
extensions/Wikibase/client/tests/phpunit/includes/DataAccess/Scribunto/Scribunto_LuaWikibaseLibraryTest.php
M
extensions/Wikibase/client/tests/phpunit/includes/DataAccess/Scribunto/SnakSerializationRendererTest.php
M extensions/Wikibase/client/tests/phpunit/includes/RepoLinkerTest.php
M extensions/Wikibase/docs/lua.wiki
M extensions/Wikibase/docs/options.wiki
M extensions/Wikibase/lib/i18n/be-tarask.json
M extensions/Wikibase/lib/i18n/bgn.json
M extensions/Wikibase/lib/i18n/eu.json
M extensions/Wikibase/lib/includes/Store/Sql/TermSqlIndex.php
M extensions/Wikibase/lib/includes/Store/TermIndex.php
M extensions/Wikibase/lib/includes/TermIndexEntry.php
M extensions/Wikibase/lib/tests/phpunit/Store/Sql/TermSqlIndexTest.php
M extensions/Wikibase/lib/tests/phpunit/TermIndexEntryTest.php
M extensions/Wikibase/repo/i18n/eu.json
M extensions/Wikibase/repo/i18n/pt.json
M extensions/Wikibase/repo/i18n/sl.json
M extensions/Wikibase/repo/i18n/sv.json
M extensions/Wikibase/repo/tests/phpunit/includes/Rdf/RdfBuilderTestData.php
M extensions/Wikibase/repo/tests/phpunit/includes/SnakFactoryTest.php
M
extensions/Wikibase/repo/tests/phpunit/includes/Store/Sql/TermSearchKeyBuilderTest.php
M vendor/composer/installed.json
31 files changed, 408 insertions(+), 168 deletions(-)
git pull ssh://gerrit.wikimedia.org:29418/mediawiki/extensions/Wikidata
refs/changes/78/323378/1
diff --git a/composer.lock b/composer.lock
index 96d1c85..98dd43d 100644
--- a/composer.lock
+++ b/composer.lock
@@ -1585,12 +1585,12 @@
"source": {
"type": "git",
"url":
"https://github.com/wikimedia/mediawiki-extensions-Wikibase.git",
- "reference": "bf46ae3908fbe6f332a0665e852e38e19c4776a0"
+ "reference": "23686670020cfc4f761d0e9d23c9c14f90871e76"
},
"dist": {
"type": "zip",
- "url":
"https://api.github.com/repos/wikimedia/mediawiki-extensions-Wikibase/zipball/bf46ae3908fbe6f332a0665e852e38e19c4776a0",
- "reference": "bf46ae3908fbe6f332a0665e852e38e19c4776a0",
+ "url":
"https://api.github.com/repos/wikimedia/mediawiki-extensions-Wikibase/zipball/23686670020cfc4f761d0e9d23c9c14f90871e76",
+ "reference": "23686670020cfc4f761d0e9d23c9c14f90871e76",
"shasum": ""
},
"require": {
@@ -1664,7 +1664,7 @@
"wikibaserepo",
"wikidata"
],
- "time": "2016-11-22 22:30:33"
+ "time": "2016-11-23 21:41:50"
},
{
"name": "wikibase/wikimedia-badges",
diff --git a/extensions/Wikibase/client/i18n/eu.json
b/extensions/Wikibase/client/i18n/eu.json
index 581f808..20df031 100644
--- a/extensions/Wikibase/client/i18n/eu.json
+++ b/extensions/Wikibase/client/i18n/eu.json
@@ -31,7 +31,10 @@
"wikibase-watchlist-show-changes-pref": "Erakutsi {{WBREPONAME}} guneko
edizioak zure jarraipen-zerrendan",
"wikibase-unconnectedpages-submit": "Erakutsi oŕriak",
"wikibase-pageswithbadges-submit": "Erakutsi oŕriak",
+ "wikibase-entityusage-entity": "Entitatea:",
"wikibase-pageinfo-entity-id": "{{WBREPONAME}} elementu IDa",
"wikibase-pageinfo-entity-id-none": "Bat ere ez",
+ "wikibase-pageinfo-entity-usage-L": "Etiketa:$1",
+ "wikibase-pageinfo-entity-usage-T": "Titulua",
"wikibase-otherprojects": "Beste proiektuetan"
}
diff --git
a/extensions/Wikibase/client/includes/DataAccess/Scribunto/Scribunto_LuaWikibaseEntityLibrary.php
b/extensions/Wikibase/client/includes/DataAccess/Scribunto/Scribunto_LuaWikibaseEntityLibrary.php
index 92b7ab6..d81813a 100644
---
a/extensions/Wikibase/client/includes/DataAccess/Scribunto/Scribunto_LuaWikibaseEntityLibrary.php
+++
b/extensions/Wikibase/client/includes/DataAccess/Scribunto/Scribunto_LuaWikibaseEntityLibrary.php
@@ -185,7 +185,7 @@
/**
* Format the main Snaks belonging to a Statement (which is identified
by a PropertyId
- * or the label of a Property) as escaped plain text.
+ * or the label of a Property) as wikitext escaped plain text.
*
* @since 0.5
*
diff --git
a/extensions/Wikibase/client/includes/DataAccess/Scribunto/Scribunto_LuaWikibaseLibrary.php
b/extensions/Wikibase/client/includes/DataAccess/Scribunto/Scribunto_LuaWikibaseLibrary.php
index bfae22e..9d7a22d 100644
---
a/extensions/Wikibase/client/includes/DataAccess/Scribunto/Scribunto_LuaWikibaseLibrary.php
+++
b/extensions/Wikibase/client/includes/DataAccess/Scribunto/Scribunto_LuaWikibaseLibrary.php
@@ -50,9 +50,9 @@
private $entityAccessor = null;
/**
- * @var SnakSerializationRenderer|null
+ * @var SnakSerializationRenderer[]
*/
- private $snakSerializationRenderer = null;
+ private $snakSerializationRenderers = [];
/**
* @var LanguageFallbackChain|null
@@ -118,14 +118,16 @@
}
/**
+ * @param string $type Either "escaped-plaintext" or "rich-wikitext".
+ *
* @return SnakSerializationRenderer
*/
- private function getSnakSerializationRenderer() {
- if ( $this->snakSerializationRenderer === null ) {
- $this->snakSerializationRenderer =
$this->newSnakSerializationRenderer();
+ private function getSnakSerializationRenderer( $type ) {
+ if ( !array_key_exists( $type,
$this->snakSerializationRenderers ) ) {
+ $this->snakSerializationRenderers[$type] =
$this->newSnakSerializationRenderer( $type );
}
- return $this->snakSerializationRenderer;
+ return $this->snakSerializationRenderers[$type];
}
/**
@@ -217,13 +219,19 @@
);
}
- private function newSnakSerializationRenderer() {
+ /**
+ * @param string $type Either "escaped-plaintext" or "rich-wikitext".
+ *
+ * @return SnakSerializationRenderer
+ */
+ private function newSnakSerializationRenderer( $type ) {
$wikibaseClient = WikibaseClient::getDefaultInstance();
$snakFormatterFactory =
$wikibaseClient->getDataAccessSnakFormatterFactory();
$snakFormatter =
$snakFormatterFactory->newWikitextSnakFormatter(
$this->getLanguage(),
- $this->getUsageAccumulator()
+ $this->getUsageAccumulator(),
+ $type
);
$snakDeserializer =
$wikibaseClient->getExternalFormatDeserializerFactory()->newSnakDeserializer();
@@ -295,7 +303,9 @@
'getSetting' => array( $this, 'getSetting' ),
'getEntityUrl' => array( $this, 'getEntityUrl' ),
'renderSnak' => array( $this, 'renderSnak' ),
+ 'formatValue' => array( $this, 'formatValue' ),
'renderSnaks' => array( $this, 'renderSnaks' ),
+ 'formatValues' => array( $this, 'formatValues' ),
'getEntityId' => array( $this, 'getEntityId' ),
'getUserLang' => array( $this, 'getUserLang' ),
'getDescription' => array( $this, 'getDescription' ),
@@ -304,11 +314,28 @@
'incrementExpensiveFunctionCount' => array( $this,
'incrementExpensiveFunctionCount' ),
'getPropertyOrder' => array( $this, 'getPropertyOrder'
),
'orderProperties' => array( $this, 'orderProperties' ),
+ 'isFormatStatementsEnabled' => array( $this,
'isFormatStatementsEnabled' ),
);
return $this->getEngine()->registerInterface(
__DIR__ . '/mw.wikibase.lua', $lib, array()
);
+ }
+
+ /**
+ * Returns the value of the "enableLuaEntityFormatStatements" setting.
+ *
+ * @since 0.5
+ *
+ * @return bool[]
+ */
+ public function isFormatStatementsEnabled() {
+ // TODO: Remove this once the feature flag is not needed
anymore!
+ $value =
WikibaseClient::getDefaultInstance()->getSettings()->getSetting(
+ 'enableLuaEntityFormatStatements'
+ );
+
+ return [ $value ];
}
/**
@@ -446,20 +473,20 @@
}
/**
- * Wrapper for renderSnak in SnakRenderer
+ * Wrapper for SnakSerializationRenderer::renderSnak, set to output
wikitext escaped plain text.
*
* @since 0.5
*
* @param array $snakSerialization
*
* @throws ScribuntoException
- * @return string[]
+ * @return string[] Wikitext
*/
public function renderSnak( $snakSerialization ) {
$this->checkType( 'renderSnak', 1, $snakSerialization, 'table'
);
try {
- $ret = array(
$this->getSnakSerializationRenderer()->renderSnak( $snakSerialization ) );
+ $ret = array( $this->getSnakSerializationRenderer(
'escaped-plaintext' )->renderSnak( $snakSerialization ) );
return $ret;
} catch ( DeserializationException $e ) {
throw new ScribuntoException(
'wikibase-error-deserialize-error' );
@@ -467,20 +494,62 @@
}
/**
- * Wrapper for renderSnaks in SnakRenderer
+ * Wrapper for SnakSerializationRenderer::renderSnak, set to output
rich wikitext.
*
* @since 0.5
*
- * @param array $snaksSerialization
+ * @param array $snakSerialization
*
* @throws ScribuntoException
- * @return string[]
+ * @return string[] Wikitext
+ */
+ public function formatValue( $snakSerialization ) {
+ $this->checkType( 'formatValue', 1, $snakSerialization, 'table'
);
+
+ try {
+ $ret = array( $this->getSnakSerializationRenderer(
'rich-wikitext' )->renderSnak( $snakSerialization ) );
+ return $ret;
+ } catch ( DeserializationException $e ) {
+ throw new ScribuntoException(
'wikibase-error-deserialize-error' );
+ }
+ }
+
+ /**
+ * Wrapper for SnakSerializationRenderer::renderSnaks, set to output
wikitext escaped plain text.
+ *
+ * @since 0.5
+ *
+ * @param array[] $snaksSerialization
+ *
+ * @throws ScribuntoException
+ * @return string[] Wikitext
*/
public function renderSnaks( $snaksSerialization ) {
$this->checkType( 'renderSnaks', 1, $snaksSerialization,
'table' );
try {
- $ret = array(
$this->getSnakSerializationRenderer()->renderSnaks( $snaksSerialization ) );
+ $ret = array( $this->getSnakSerializationRenderer(
'escaped-plaintext' )->renderSnaks( $snaksSerialization ) );
+ return $ret;
+ } catch ( DeserializationException $e ) {
+ throw new ScribuntoException(
'wikibase-error-deserialize-error' );
+ }
+ }
+
+ /**
+ * Wrapper for SnakSerializationRenderer::renderSnaks, set to output
rich wikitext.
+ *
+ * @since 0.5
+ *
+ * @param array[] $snaksSerialization
+ *
+ * @throws ScribuntoException
+ * @return string[] Wikitext
+ */
+ public function formatValues( $snaksSerialization ) {
+ $this->checkType( 'formatValues', 1, $snaksSerialization,
'table' );
+
+ try {
+ $ret = array( $this->getSnakSerializationRenderer(
'rich-wikitext' )->renderSnaks( $snaksSerialization ) );
return $ret;
} catch ( DeserializationException $e ) {
throw new ScribuntoException(
'wikibase-error-deserialize-error' );
diff --git
a/extensions/Wikibase/client/includes/DataAccess/Scribunto/SnakSerializationRenderer.php
b/extensions/Wikibase/client/includes/DataAccess/Scribunto/SnakSerializationRenderer.php
index ab3ef79..e8b9b53 100644
---
a/extensions/Wikibase/client/includes/DataAccess/Scribunto/SnakSerializationRenderer.php
+++
b/extensions/Wikibase/client/includes/DataAccess/Scribunto/SnakSerializationRenderer.php
@@ -106,7 +106,15 @@
}
}
- return $this->language->commaList( $formattedValues );
+ $commaList = $this->language->commaList( $formattedValues );
+
+ if ( $commaList === ''
+ || $this->snakFormatter->getFormat() ===
SnakFormatter::FORMAT_PLAIN
+ ) {
+ return $commaList;
+ }
+
+ return "<span>$commaList</span>";
}
}
diff --git
a/extensions/Wikibase/client/includes/DataAccess/Scribunto/WikibaseLuaEntityBindings.php
b/extensions/Wikibase/client/includes/DataAccess/Scribunto/WikibaseLuaEntityBindings.php
index fe97725..5a297e4 100644
---
a/extensions/Wikibase/client/includes/DataAccess/Scribunto/WikibaseLuaEntityBindings.php
+++
b/extensions/Wikibase/client/includes/DataAccess/Scribunto/WikibaseLuaEntityBindings.php
@@ -64,7 +64,7 @@
/**
* Format the main Snaks belonging to a Statement (which is identified
by a PropertyId
- * or the label of a Property) as escaped plain text.
+ * or the label of a Property) as wikitext escaped plain text.
*
* @since 0.5
*
diff --git
a/extensions/Wikibase/client/includes/DataAccess/Scribunto/mw.wikibase.entity.lua
b/extensions/Wikibase/client/includes/DataAccess/Scribunto/mw.wikibase.entity.lua
index 4918335..2b5df2d 100644
---
a/extensions/Wikibase/client/includes/DataAccess/Scribunto/mw.wikibase.entity.lua
+++
b/extensions/Wikibase/client/includes/DataAccess/Scribunto/mw.wikibase.entity.lua
@@ -214,7 +214,7 @@
end
-- Format the main Snaks belonging to a Statement (which is identified by a
PropertyId
--- or the label of a Property) as escaped plain text.
+-- or the label of a Property) as wikitext escaped plain text.
--
-- @param {string} propertyLabelOrId
-- @param {table} [acceptableRanks]
diff --git
a/extensions/Wikibase/client/includes/DataAccess/Scribunto/mw.wikibase.lua
b/extensions/Wikibase/client/includes/DataAccess/Scribunto/mw.wikibase.lua
index 824e231..d336ff5 100644
--- a/extensions/Wikibase/client/includes/DataAccess/Scribunto/mw.wikibase.lua
+++ b/extensions/Wikibase/client/includes/DataAccess/Scribunto/mw.wikibase.lua
@@ -205,7 +205,7 @@
end
- -- Render a Snak from its serialization
+ -- Render a Snak value from its serialization as wikitext escaped plain
text.
--
-- @param {table} snakSerialization
wikibase.renderSnak = function( snakSerialization )
@@ -214,7 +214,21 @@
return php.renderSnak( snakSerialization )
end
- -- Render a list of Snaks from their serialization
+ -- Render a Snak value from its serialization as rich wikitext.
+ --
+ -- @param {table} snakSerialization
+ wikibase.formatValue = function( snakSerialization )
+ checkType( 'formatValue', 1, snakSerialization, 'table' )
+
+ -- TODO: Remove the feature flag when not needed anymore!
+ if php.isFormatStatementsEnabled() ~= true then
+ error( 'mw.wikibase:formatValue() is not enabled on
this wiki.', 2 )
+ end
+
+ return php.formatValue( snakSerialization )
+ end
+
+ -- Render a list of Snak values from their serialization as wikitext
escaped plain text.
--
-- @param {table} snaksSerialization
wikibase.renderSnaks = function( snaksSerialization )
@@ -223,6 +237,20 @@
return php.renderSnaks( snaksSerialization )
end
+ -- Render a list of Snak values from their serialization as rich
wikitext.
+ --
+ -- @param {table} snaksSerialization
+ wikibase.formatValues = function( snaksSerialization )
+ checkType( 'formatValues', 1, snaksSerialization, 'table' )
+
+ -- TODO: Remove the feature flag when not needed anymore!
+ if php.isFormatStatementsEnabled() ~= true then
+ error( 'mw.wikibase:formatValues() is not enabled on
this wiki.', 2 )
+ end
+
+ return php.formatValues( snaksSerialization )
+ end
+
-- Returns a property id for the given label or id
--
-- @param {string} propertyLabelOrId
diff --git
a/extensions/Wikibase/client/tests/phpunit/includes/DataAccess/DataAccessSnakFormatterOutputFormatTest.php
b/extensions/Wikibase/client/tests/phpunit/includes/DataAccess/DataAccessSnakFormatterOutputFormatTest.php
index b184f72..1ab9bc4 100644
---
a/extensions/Wikibase/client/tests/phpunit/includes/DataAccess/DataAccessSnakFormatterOutputFormatTest.php
+++
b/extensions/Wikibase/client/tests/phpunit/includes/DataAccess/DataAccessSnakFormatterOutputFormatTest.php
@@ -108,7 +108,7 @@
}
/**
- * Snaks which are formatted the same in the escaped plain text
+ * Snaks which are formatted the same in the wikitext escaped plain text
* and in the rich wikitext formatting.
*
* @return array[]
diff --git
a/extensions/Wikibase/client/tests/phpunit/includes/DataAccess/Scribunto/LuaWikibaseLibraryTests.lua
b/extensions/Wikibase/client/tests/phpunit/includes/DataAccess/Scribunto/LuaWikibaseLibraryTests.lua
index 31111a8..bd90760 100644
---
a/extensions/Wikibase/client/tests/phpunit/includes/DataAccess/Scribunto/LuaWikibaseLibraryTests.lua
+++
b/extensions/Wikibase/client/tests/phpunit/includes/DataAccess/Scribunto/LuaWikibaseLibraryTests.lua
@@ -44,11 +44,25 @@
return mw.wikibase.renderSnak( snak )
end
+local function testFormatValue()
+ local entity = mw.wikibase.getEntityObject( 'Q32487' )
+ local snak = entity['claims']['P342'][1]['qualifiers']['P342'][1]
+
+ return mw.wikibase.formatValue( snak )
+end
+
local function testRenderSnaks()
local entity = mw.wikibase.getEntityObject( 'Q32487' )
local snaks = entity['claims']['P342'][1]['qualifiers']
return mw.wikibase.renderSnaks( snaks )
+end
+
+local function testFormatValues()
+ local entity = mw.wikibase.getEntityObject( 'Q32487' )
+ local snaks = entity['claims']['P342'][1]['qualifiers']
+
+ return mw.wikibase.formatValues( snaks )
end
local tests = {
@@ -162,6 +176,13 @@
args = { 'meep' },
expect = "bad argument #1 to 'renderSnak' (table expected, got
string)"
},
+ { name = 'mw.wikibase.formatValue', func = testFormatValue,
type='ToString',
+ expect = { '<span>A qualifier Snak</span>' }
+ },
+ { name = 'mw.wikibase.formatValue (must be table)', func =
mw.wikibase.formatValue,
+ args = { 'meep' },
+ expect = "bad argument #1 to 'formatValue' (table expected, got
string)"
+ },
{ name = 'mw.wikibase.renderSnaks', func = testRenderSnaks,
type='ToString',
expect = { 'A qualifier Snak, Moar qualifiers' }
},
@@ -169,6 +190,13 @@
args = { 'meep' },
expect = "bad argument #1 to 'renderSnaks' (table expected, got
string)"
},
+ { name = 'mw.wikibase.formatValues', func = testFormatValues,
type='ToString',
+ expect = { '<span><span>A qualifier Snak</span>, <span>Moar
qualifiers</span></span>' }
+ },
+ { name = 'mw.wikibase.formatValues (must be table)', func =
mw.wikibase.formatValues,
+ args = { 'meep' },
+ expect = "bad argument #1 to 'formatValues' (table expected, got
string)"
+ },
{ name = 'mw.wikibase.resolvePropertyId', func =
mw.wikibase.resolvePropertyId,
args = { 'LuaTestStringProperty' },
expect = { 'P342' }
diff --git
a/extensions/Wikibase/client/tests/phpunit/includes/DataAccess/Scribunto/Scribunto_LuaWikibaseLibraryTest.php
b/extensions/Wikibase/client/tests/phpunit/includes/DataAccess/Scribunto/Scribunto_LuaWikibaseLibraryTest.php
index b3e3d72..f7ffa13 100644
---
a/extensions/Wikibase/client/tests/phpunit/includes/DataAccess/Scribunto/Scribunto_LuaWikibaseLibraryTest.php
+++
b/extensions/Wikibase/client/tests/phpunit/includes/DataAccess/Scribunto/Scribunto_LuaWikibaseLibraryTest.php
@@ -55,6 +55,9 @@
$settings = WikibaseClient::getDefaultInstance()->getSettings();
$this->oldAllowDataAccessInUserLanguage =
$settings->getSetting( 'allowDataAccessInUserLanguage' );
$this->setAllowDataAccessInUserLanguage( false );
+
+ // TODO: Remove the feature flag when not needed any more!
+ $settings->setSetting( 'enableLuaEntityFormatStatements', true
);
}
protected function tearDown() {
@@ -312,6 +315,16 @@
$luaWikibaseLibrary->renderSnak( array( 'a' => 'b' ) );
}
+ public function testFormatValue() {
+ $luaWikibaseLibrary = $this->newScribuntoLuaWikibaseLibrary();
+ $entityArr = $luaWikibaseLibrary->getEntity( 'Q32488' );
+ $snak = $entityArr[0]['claims']['P456'][1]['mainsnak'];
+ $this->assertSame(
+ [ '<span>Q885588</span>' ],
+ $luaWikibaseLibrary->formatValue( $snak )
+ );
+ }
+
/**
* @dataProvider allowDataAccessInUserLanguageProvider
*/
@@ -342,6 +355,16 @@
$luaWikibaseLibrary->renderSnaks( array( 'a' => 'b' ) );
}
+ public function testFormatValues() {
+ $luaWikibaseLibrary = $this->newScribuntoLuaWikibaseLibrary();
+ $entityArr = $luaWikibaseLibrary->getEntity( 'Q32487' );
+ $snaks = $entityArr[0]['claims']['P342'][1]['qualifiers'];
+ $this->assertSame(
+ [ '<span><span>A qualifier Snak</span>, <span>Moar
qualifiers</span></span>' ],
+ $luaWikibaseLibrary->formatValues( $snaks )
+ );
+ }
+
public function testResolvePropertyId() {
$cacheSplit = false;
$luaWikibaseLibrary = $this->newScribuntoLuaWikibaseLibrary(
$cacheSplit );
diff --git
a/extensions/Wikibase/client/tests/phpunit/includes/DataAccess/Scribunto/SnakSerializationRendererTest.php
b/extensions/Wikibase/client/tests/phpunit/includes/DataAccess/Scribunto/SnakSerializationRendererTest.php
index 1d005ba..9e86555 100644
---
a/extensions/Wikibase/client/tests/phpunit/includes/DataAccess/Scribunto/SnakSerializationRendererTest.php
+++
b/extensions/Wikibase/client/tests/phpunit/includes/DataAccess/Scribunto/SnakSerializationRendererTest.php
@@ -61,6 +61,9 @@
return $value->getValue();
}
} ) );
+ $snakFormatter->expects( $this->any() )
+ ->method( 'getFormat' )
+ ->will( $this->returnValue( SnakFormatter::FORMAT_PLAIN
) );
$snakDeserializer =
$wikibaseClient->getExternalFormatDeserializerFactory()->newSnakDeserializer();
$snaksDeserializer =
$wikibaseClient->getExternalFormatDeserializerFactory()->newSnakListDeserializer();
diff --git
a/extensions/Wikibase/client/tests/phpunit/includes/RepoLinkerTest.php
b/extensions/Wikibase/client/tests/phpunit/includes/RepoLinkerTest.php
index ab690e5..82fbbfa 100644
--- a/extensions/Wikibase/client/tests/phpunit/includes/RepoLinkerTest.php
+++ b/extensions/Wikibase/client/tests/phpunit/includes/RepoLinkerTest.php
@@ -107,8 +107,8 @@
}
public function getEntityTitleProvider() {
- $itemId = ItemId::newFromNumber( 388 );
- $propertyId = PropertyId::newFromNumber( 472 );
+ $itemId = new ItemId( 'Q388' );
+ $propertyId = new PropertyId( 'P472' );
$settings = $this->getRepoSettings();
return array(
diff --git a/extensions/Wikibase/docs/lua.wiki
b/extensions/Wikibase/docs/lua.wiki
index 44cab7d..86b262e 100644
--- a/extensions/Wikibase/docs/lua.wiki
+++ b/extensions/Wikibase/docs/lua.wiki
@@ -96,26 +96,50 @@
=== mw.wikibase.renderSnak ===
<code>wikibase.renderSnak( snakSerialization )</code><br>
-Renders a serialized Snak to text. This is useful for displaying References or
Qualifiers.
+Renders a serialized Snak value to wikitext escaped plain text. This is useful
for displaying References or Qualifiers.
An example call might look like this:
<source lang="lua">
local entity = mw.wikibase.getEntityObject()
local snak = entity['claims']['P342'][1]['qualifiers']['P342'][1]
-mw.wikibase.renderSnak( snak ) -- Returns the given Snak formatted as wiki
text.
+mw.wikibase.renderSnak( snak ) -- Returns the given Snak value formatted as
wikitext escaped plain text.
+</source>
+
+=== mw.wikibase.formatValue ===
+<code>wikibase.formatValue( snakSerialization )</code><br>
+Renders a serialized Snak value to rich wikitext. This is useful for
displaying References or Qualifiers.
+
+An example call might look like this:
+<source lang="lua">
+local entity = mw.wikibase.getEntityObject()
+local snak = entity['claims']['P342'][1]['qualifiers']['P342'][1]
+
+mw.wikibase.formatValue( snak ) -- Returns the given Snak value formatted as
rich wikitext.
</source>
=== mw.wikibase.renderSnaks ===
<code>wikibase.renderSnaks( snaksSerialization )</code><br>
-Renders a list of serialized Snaks to text. This is useful for displaying
References or Qualifiers.
+Renders a list of serialized Snak values to wikitext escaped plain text. This
is useful for displaying References or Qualifiers.
An example call might look like this:
<source lang="lua">
local entity = mw.wikibase.getEntityObject()
local snaks = entity['claims']['P342'][1]['qualifiers']
-mw.wikibase.renderSnaks( snaks ) -- Returns the given Snaks formatted as wiki
text.
+mw.wikibase.renderSnaks( snaks ) -- Returns the given Snak values formatted as
wikitext escaped plain text.
+</source>
+
+=== mw.wikibase.formatValues ===
+<code>wikibase.formatValues( snaksSerialization )</code><br>
+Renders a list of serialized Snak values to rich wikitext. This is useful for
displaying References or Qualifiers.
+
+An example call might look like this:
+<source lang="lua">
+local entity = mw.wikibase.getEntityObject()
+local snaks = entity['claims']['P342'][1]['qualifiers']
+
+mw.wikibase.formatValues( snaks ) -- Returns the given Snak values formatted
as rich wikitext.
</source>
=== mw.wikibase.resolvePropertyId ===
@@ -246,7 +270,7 @@
<code>entity:formatStatements( propertyLabelOrId )</code><br>
<code>entity:formatStatements( propertyLabelOrId, acceptableRanks )</code><br>
-Like
[[#mw.wikibase.entity:formatPropertyValues|<code>mw.wikibase.entity:formatPropertyValues</code>]],
but the returned values will be formatted as rich wikitext, rather than just
escaped plain text.
+Like
[[#mw.wikibase.entity:formatPropertyValues|<code>mw.wikibase.entity:formatPropertyValues</code>]],
but the returned values will be formatted as rich wikitext, rather than just
wikitext escaped plain text.
=== mw.wikibase.entity.claimRanks ===
The <code>mw.wikibase.entity.claimRanks</code> table contains a map of all
available claim ranks.
diff --git a/extensions/Wikibase/docs/options.wiki
b/extensions/Wikibase/docs/options.wiki
index 325d8c6..8898c07 100644
--- a/extensions/Wikibase/docs/options.wiki
+++ b/extensions/Wikibase/docs/options.wiki
@@ -107,4 +107,4 @@
;sendEchoNotification: If true, allows users on the client wiki to get a
notification when a page they created is connected to a repo item. This
requires the Echo extension.
;repoIcon: If <code>sendEchoNotification</code> is set to <code>true</code>,
you can also provide what icon the user will see. The correct syntax is
<code>array( 'url' => '...' )</code> or <code>array( 'path' => '...' )</code>
where <code>path</code> is relative to <code>$wgExtensionAssetsPath</code>.
Defaults to <code>false</code> which means that there will be the default Echo
icon.
;enableStatementsParserFunction: Feature flag for the
<code><nowiki>{{#statements|…}}</nowiki></code> parser function.
-;enableLuaEntityFormatStatements: Feature flag for the
<code>mw.wikibase.entity:formatStatements()</code> Lua function.
+;enableLuaEntityFormatStatements: Feature flag for the
<code>mw.wikibase.entity:formatStatements()</code> as well as the
<code>mw.wikibase.formatValue</code> and <code>mw.wikibase.formatValues</code>
Lua functions.
diff --git a/extensions/Wikibase/lib/i18n/be-tarask.json
b/extensions/Wikibase/lib/i18n/be-tarask.json
index cc85b7e..24c5641 100644
--- a/extensions/Wikibase/lib/i18n/be-tarask.json
+++ b/extensions/Wikibase/lib/i18n/be-tarask.json
@@ -23,7 +23,7 @@
"wikibase-error-autocomplete-connection": "Не атрымалася запытаць API
сайта. Калі ласка, паспрабуйце пазьней.",
"wikibase-error-autocomplete-response": "Адказ сэрвэра: $1",
"wikibase-error-ui-no-external-page": "Старонка «$2» ня знойдзеная на
сайце «$1».",
- "wikibase-error-ui-edit-conflict": "Адбыўся канфлікт рэдагаваньня.
Захавайце свае зьмены на кампутары, абнавіце старонку і захавайце зноў, калі
ласка.",
+ "wikibase-error-ui-edit-conflict": "Адначасова з вамі было зьмененае
тое ж самае значэньне, што выклікала канфлікт рэдагаваньняў. Калі ласка,
перазагрузіце старонку.",
"wikibase-language-fallback-transliteration-hint": "$1
(трансьлітаравана)",
"wikibase-quantitydetails-amount": "Сума",
"wikibase-quantitydetails-upperbound": "Верхняя мяжа",
diff --git a/extensions/Wikibase/lib/i18n/bgn.json
b/extensions/Wikibase/lib/i18n/bgn.json
index ccf54ab..73359d2 100644
--- a/extensions/Wikibase/lib/i18n/bgn.json
+++ b/extensions/Wikibase/lib/i18n/bgn.json
@@ -1,8 +1,9 @@
{
"@metadata": {
"authors": [
- "Baloch Afghanistan"
+ "Baloch Afghanistan",
+ "Ibrahim khashrowdi"
]
},
- "wikibase-sitelinks-wikipedia": "ویکی پیڈیا"
+ "wikibase-sitelinks-wikipedia": "ویکیپیڈیا"
}
diff --git a/extensions/Wikibase/lib/i18n/eu.json
b/extensions/Wikibase/lib/i18n/eu.json
index 3407801..d60c1d7 100644
--- a/extensions/Wikibase/lib/i18n/eu.json
+++ b/extensions/Wikibase/lib/i18n/eu.json
@@ -6,7 +6,11 @@
"Sator"
]
},
- "wikibase-error-save-generic": "Errore bat gertatu da gordetzean. Zure
aldaketak ezingo dira osatu.",
+ "specialpages-group-wikibase": "Wikibase",
+ "wikibase-deletedentity-item": "Ezabatu elementua",
+ "wikibase-deletedentity-property": "Ezabatu propietatea",
+ "wikibase-deletedentity-query": "Ezabatu kontsulta",
+ "wikibase-error-save-generic": "Errore baten ondorioz ezin izan dira
aldaketak gorde.",
"wikibase-language-fallback-transliteration-hint": "$1
(transliteratuta)",
"wikibase-timedetails-timezone": "Ordu-eremua",
"wikibase-timedetails-calendar": "Egutegia",
@@ -15,5 +19,11 @@
"wikibase-sitelinks-wikipedia": "Wikipedia",
"wikibase-sitelinks-sitename-columnheading": "Hizkuntza",
"wikibase-tooltip-error-details": "Xehetasunak",
- "wikibase-time-precision-Gannum": "$1 mila milioi urte K.o."
+ "datatypes-type-wikibase-item": "Elementua",
+ "datatypes-type-wikibase-property": "Propietatea",
+ "version-wikibase": "Wikibase",
+ "wikibase-time-precision-Gannum": "$1 mila milioi urte K.o.",
+ "wikibase-item-summary-wbcreate-new": "Elementu berria sortua",
+ "wikibase-item-summary-wbeditentity": "Elementu berria sortua",
+ "wikibase-item-summary-wbeditentity-create": "Elementu berria sortua"
}
diff --git a/extensions/Wikibase/lib/includes/Store/Sql/TermSqlIndex.php
b/extensions/Wikibase/lib/includes/Store/Sql/TermSqlIndex.php
index 42c6a25..0585b56 100644
--- a/extensions/Wikibase/lib/includes/Store/Sql/TermSqlIndex.php
+++ b/extensions/Wikibase/lib/includes/Store/Sql/TermSqlIndex.php
@@ -57,7 +57,6 @@
'term_type' => 'termType',
'term_language' => 'termLanguage',
'term_text' => 'termText',
- 'term_weight' => 'termWeight',
'term_entity_id' => 'entityId',
);
@@ -224,13 +223,14 @@
$terms = [];
foreach ( $termList->toTextArray() as $languageCode => $text ) {
- $term = new TermIndexEntry( $extraFields );
-
- $term->setLanguage( $languageCode );
- $term->setType( $termType );
- $term->setText( $text );
-
- $terms[] = $term;
+ $terms[] = new TermIndexEntry( array_merge(
+ $extraFields,
+ [
+ 'termLanguage' => $languageCode,
+ 'termType' => $termType,
+ 'termText' => $text,
+ ]
+ ) );
}
return $terms;
@@ -249,13 +249,14 @@
$languageCode = $aliasGroup->getLanguageCode();
foreach ( $aliasGroup->getAliases() as $alias ) {
- $term = new TermIndexEntry( $extraFields );
-
- $term->setLanguage( $languageCode );
- $term->setType( TermIndexEntry::TYPE_ALIAS );
- $term->setText( $alias );
-
- $terms[] = $term;
+ $terms[] = new TermIndexEntry( array_merge(
+ $extraFields,
+ [
+ 'termLanguage' => $languageCode,
+ 'termType' =>
TermIndexEntry::TYPE_ALIAS,
+ 'termText' => $alias,
+ ]
+ ) );
}
}
@@ -540,7 +541,7 @@
$rows = $dbr->select(
$this->tableName,
- array_keys( $this->termFieldMap ),
+ array_keys( $this->termFieldMap + [ 'term_weight' =>
null ] ),
array( $dbr->makeList( $termConditions, LIST_OR ) ),
__METHOD__,
$queryOptions
@@ -766,8 +767,6 @@
if ( $key === 'term_entity_id' ) {
$value = (int)$value;
- } elseif ( $key === 'term_weight' ) {
- $value = (float)$value;
}
$matchingTerm[$this->termFieldMap[$key]] =
$value;
diff --git a/extensions/Wikibase/lib/includes/Store/TermIndex.php
b/extensions/Wikibase/lib/includes/Store/TermIndex.php
index 13161ea..26c45ef 100644
--- a/extensions/Wikibase/lib/includes/Store/TermIndex.php
+++ b/extensions/Wikibase/lib/includes/Store/TermIndex.php
@@ -87,7 +87,7 @@
* method parameters.
*
* The return value is an array of Terms where entityId, entityType,
- * termType, termLanguage, termText, termWeight are all set.
+ * termType, termLanguage, termText are all set.
*
* @since 0.2
*
@@ -121,7 +121,7 @@
* method parameters.
*
* The return value is an array of Terms where entityId, entityType,
- * termType, termLanguage, termText, termWeight are all set.
+ * termType, termLanguage, termText are all set.
*
* @since 0.5
*
diff --git a/extensions/Wikibase/lib/includes/TermIndexEntry.php
b/extensions/Wikibase/lib/includes/TermIndexEntry.php
index 1c9677d..589fe8e 100644
--- a/extensions/Wikibase/lib/includes/TermIndexEntry.php
+++ b/extensions/Wikibase/lib/includes/TermIndexEntry.php
@@ -42,7 +42,6 @@
'termType',
'termLanguage',
'termText',
- 'termWeight',
);
/**
@@ -70,9 +69,6 @@
case 'termText':
$this->setText( $value );
break;
- case 'termWeight':
- $this->setWeight( $value );
- break;
default:
throw new MWException( 'Invalid term
field provided' );
}
@@ -80,13 +76,11 @@
}
/**
- * @since 0.2
- *
* @param string $termType
*
* @throws MWException
*/
- public function setType( $termType ) {
+ private function setType( $termType ) {
if ( !in_array( $termType, array( self::TYPE_ALIAS,
self::TYPE_LABEL, self::TYPE_DESCRIPTION ), true ) ) {
throw new MWException( 'Invalid term type provided' );
}
@@ -104,13 +98,11 @@
}
/**
- * @since 0.2
- *
* @param string $languageCode
*
* @throws MWException
*/
- public function setLanguage( $languageCode ) {
+ private function setLanguage( $languageCode ) {
if ( !is_string( $languageCode ) ) {
throw new MWException( 'Language code can only be a
string' );
}
@@ -128,13 +120,11 @@
}
/**
- * @since 0.2
- *
* @param string $text
*
* @throws MWException
*/
- public function setText( $text ) {
+ private function setText( $text ) {
if ( !is_string( $text ) ) {
throw new MWException( 'Term text code can only be a
string' );
}
@@ -149,30 +139,6 @@
*/
public function getText() {
return array_key_exists( 'termText', $this->fields ) ?
$this->fields['termText'] : null;
- }
-
- /**
- * @since 0.5
- *
- * @param float $weight
- *
- * @throws MWException
- */
- public function setWeight( $weight ) {
- if ( !is_float( $weight ) ) {
- throw new MWException( 'Term weight code can only be a
float' );
- }
-
- $this->fields['termWeight'] = $weight;
- }
-
- /**
- * @since 0.5
- *
- * @return float|null
- */
- public function getWeight() {
- return array_key_exists( 'termWeight', $this->fields ) ?
$this->fields['termWeight'] : null;
}
/**
@@ -251,7 +217,6 @@
/**
* Imposes an canonical but arbitrary order on Term objects.
* Useful for sorting lists of terms for comparison.
- * This comparison DOES NOT use termWeight
*
* @param self $a
* @param self $b
@@ -259,10 +224,7 @@
* @return int Returns 1 if $a is greater than $b, -1 if $b is greater
than $a, and 0 otherwise.
*/
public static function compare( self $a, self $b ) {
- $fieldNames = self::$fieldNames;
- unset( $fieldNames[array_search( 'termWeight', $fieldNames )] );
-
- foreach ( $fieldNames as $n ) {
+ foreach ( self::$fieldNames as $n ) {
$exists = array_key_exists( $n, $a->fields );
if ( $exists !== array_key_exists( $n, $b->fields ) ) {
diff --git
a/extensions/Wikibase/lib/tests/phpunit/Store/Sql/TermSqlIndexTest.php
b/extensions/Wikibase/lib/tests/phpunit/Store/Sql/TermSqlIndexTest.php
index 5425868..3a8d3ab 100644
--- a/extensions/Wikibase/lib/tests/phpunit/Store/Sql/TermSqlIndexTest.php
+++ b/extensions/Wikibase/lib/tests/phpunit/Store/Sql/TermSqlIndexTest.php
@@ -71,9 +71,7 @@
$termIndex->saveTermsOfEntity( $item );
- $term = new TermIndexEntry();
- $term->setLanguage( $languageCode );
- $term->setText( $searchText );
+ $term = new TermIndexEntry( [ 'termLanguage' => $languageCode,
'termText' => $searchText ] );
$options = array(
'caseSensitive' => false,
diff --git a/extensions/Wikibase/lib/tests/phpunit/TermIndexEntryTest.php
b/extensions/Wikibase/lib/tests/phpunit/TermIndexEntryTest.php
index 4bc139f..68779ce 100644
--- a/extensions/Wikibase/lib/tests/phpunit/TermIndexEntryTest.php
+++ b/extensions/Wikibase/lib/tests/phpunit/TermIndexEntryTest.php
@@ -29,7 +29,6 @@
'termType' =>
TermIndexEntry::TYPE_LABEL,
'termLanguage' => 'en',
'termText' => 'foo',
- 'termWeight' => 1.234,
]
],
[
@@ -65,17 +64,15 @@
$this->assertEquals( isset( $fields['termType'] ) ?
$fields['termType'] : null, $term->getType() );
$this->assertEquals( isset( $fields['termLanguage'] ) ?
$fields['termLanguage'] : null, $term->getLanguage() );
$this->assertEquals( isset( $fields['termText'] ) ?
$fields['termText'] : null, $term->getText() );
- $this->assertEquals( isset( $fields['termWeight'] ) ?
$fields['termWeight'] : null, $term->getWeight() );
+ }
+
+ public function testGivenInvalidField_constructorThrowsException() {
+ $this->setExpectedException( MWException::class );
+ new TermIndexEntry( [ 'fooField' => 'bar' ] );
}
public function testClone() {
$term = new TermIndexEntry( [ 'termText' => 'Foo' ] );
-
- $clone = clone $term;
- $clone->setText( 'Bar' );
-
- $this->assertEquals( 'Bar', $clone->getText(), 'clone must
change when modified' ); // sanity
- $this->assertEquals( 'Foo', $term->getText(), 'original must
stay the same when clone is modified' );
$clone = clone $term;
$this->assertEquals( $term, $clone, 'clone must be equal to
original' );
diff --git a/extensions/Wikibase/repo/i18n/eu.json
b/extensions/Wikibase/repo/i18n/eu.json
index 37033cc..44dbf35 100644
--- a/extensions/Wikibase/repo/i18n/eu.json
+++ b/extensions/Wikibase/repo/i18n/eu.json
@@ -11,6 +11,10 @@
"Theklan"
]
},
+ "wikibase-entity": "entitatea",
+ "wikibase-entity-item": "elementua",
+ "wikibase-entity-property": "propietatea",
+ "wikibase-entity-query": "kontsulta",
"wikibase-edit": "aldatu",
"wikibase-save": "gorde",
"wikibase-cancel": "utzi",
@@ -19,34 +23,52 @@
"wikibase-addreference": "Erreferentzia gehitu",
"wikibase-save-inprogress": "Gordetzen...",
"wikibase-remove-inprogress": "Ezabatzen...",
+ "wikibase-statementlistview-add": "gehitu",
"wikibase-statementlistview-add-tooltip": "Gehitu balio berri bat",
+ "wikibase-statementgrouplistview-add": "gehitu",
+ "wikibase-statementgrouplistview-add-tooltip": "Gehitu adierazpen
berria",
"wikibase-entitytermsview-entitytermsforlanguagelistview-toggler":
"Hizkuntza gehiagotan",
"wikibase-entitytermsview-entitytermsforlanguagelistview-configure-link-label":
"Konfiguratu",
"wikibase-entitytermsforlanguagelistview-description": "Deskribapena",
"wikibase-entitytermsforlanguagelistview-label": "Etiketa",
"wikibase-entitytermsforlanguagelistview-language": "Hizkuntza",
"wikibase-entitytermsforlanguagelistview-more": "Sartutako hizkuntza
guztiak",
+ "wikibase-entitytermsforlanguagelistview-less": "Hizkuntza gutxiago",
"wikibase-label-empty": "Ez da etiketarik zehaztu",
"wikibase-label-edit-placeholder": "Sartu etiketa bat",
"wikibase-description-empty": "Ez dago difinituriko deskribapenik",
"wikibase-description-edit-placeholder-language-aware": "sartu
deskribapen bat $1-n",
+ "wikibase-diffview-reference": "erreferentzia",
"wikibase-diffview-label": "etiketa",
"wikibase-diffview-description": "deskribapena",
+ "wikibase-diffview-link": "loturak",
+ "wikibase-sitelink-site-edit-placeholder": "wiki",
+ "wikibase-sitelink-page-edit-placeholder": "orrialdea",
"wikibase-statementsection-statements": "Adierazpenak",
"wikibase-sitelinks-counter": "$1{{PLURAL:$2|0=|$3+$2$4}}
{{PLURAL:$1|entry|sarrera}}",
"wikibase-sitelinks-special": "Beste guneak",
"wikibase-remove": "kendu",
+ "wikibase-propertypage-datatype": "Datu mota",
+ "wikibase-propertypage-bad-datatype": "Datu mota ezezaguna:$1",
"wikibase-statementview-rank-normal": "Eremu arrunta",
"wikibase-statementview-references-counter":
"$1{{PLURAL:$2|0=|$3+$2$4}} {{PLURAL:$1|iturri|iturriak}}",
- "wikibase-statementview-referencesheading-pendingcountertooltip":
"{{PLURAL:$1|Iturri bat ez da|$1 iturri ez dira}} gorde oraindik",
+ "wikibase-statementview-referencesheading-pendingcountertooltip":
"{{PLURAL:$1|Erreferentzia bat ez da|$1 erreferentzia ez dira}} gorde oraindik",
"wikibase-snakview-property-input-placeholder": "ezaugarri",
+ "wikibase-snakview-variations-somevalue-label": "balio ezezaguna",
+ "wikibase-snakview-variations-novalue-label": "baliorik ez",
+ "wikibase-snakview-snaktypeselector-value": "balio automatikoa",
+ "wikibase-snakformat-invalid-value": "Balio ez baliagarria.",
+ "wikibase-snakformat-propertynotfound": "Propietatea ez da aurkitu.",
"wikibase-entityselector-more": "gehiago",
"wikibase-validator-sitelink-conflict": "$1 lotura dagoeneko $2
elementuak erabiltzen du. $2tik kendu egin dezakezu horri ez badagokio edo
elementuak bateratu gai berdinaz ari badira.",
+ "special-itembytitle": "Elementua tituluaren arabera",
"wikibase-itembytitle-lookup-page": "Orria:",
"wikibase-itembytitle-submit": "Bilatu",
"wikibase-itemdisambiguation-lookup-language": "Hizkuntza kodea:",
+ "wikibase-itemdisambiguation-lookup-label": "Etiketa:",
"wikibase-itemdisambiguation-submit": "Bilatu",
"special-newproperty": "Propietate berria sortu",
+ "wikibase-newproperty-datatype": "Datu mota:",
"special-newitem": "Elementu berria sortu",
"wikibase-newentity-language": "Hizkuntza:",
"wikibase-newentity-label": "Etiketa:",
diff --git a/extensions/Wikibase/repo/i18n/pt.json
b/extensions/Wikibase/repo/i18n/pt.json
index 959e4ac..9690d24 100644
--- a/extensions/Wikibase/repo/i18n/pt.json
+++ b/extensions/Wikibase/repo/i18n/pt.json
@@ -69,7 +69,7 @@
"wikibase-entitytermsview-input-help-message": "Insira um rótulo para
esta entidade, uma descrição breve e nomes alternativos por língua.",
"wikibase-statementsection-statements": "Declarações",
"wikibase-sitelinks": "Links intersites",
- "wikibase-sitelinkgroupview-input-help-message": "Adicionar um ''link''
para um ''site'' especificando o ''site'' e uma página dele, editar ou remover
''links'' de ''sites'' existentes.",
+ "wikibase-sitelinkgroupview-input-help-message": "Adicionar um ''link
intersites'', especificando o ''site'' e uma página dele, editar ou remover
''links intersites'' existentes.",
"wikibase-sitelinks-counter": "$1{{PLURAL:$2|0=|$3+$2$4}}
{{PLURAL:$1|entrada|entradas}}",
"wikibase-sitelinks-empty": "Não há nenhuma página com ''links'' para
este objeto.",
"wikibase-sitelinks-special": "Outros ''sites''",
@@ -147,7 +147,7 @@
"wikibase-gotolinkedpage-lookup-site": "Site:",
"wikibase-gotolinkedpage-lookup-item": "Identificador do objeto:",
"wikibase-gotolinkedpage-submit": "Continuar",
- "wikibase-gotolinkedpage-summary": "A página Special:GoToLinkedPage é
usada para localizar a página de um objeto num ''site'' interligado.<br />O
primeiro campo, \"{{int:wikibase-gotolinkedpage-lookup-site}}\", é onde deve
inserir a língua e o código do ''site''.<br />No segundo campo,
\"{{int:wikibase-gotolinkedpage-lookup-item}}\", deve colocar o identificador
do objeto que procura.",
+ "wikibase-gotolinkedpage-summary": "A página Special:GoToLinkedPage é
usada para localizar a página de um objeto num ''site'' ligado.<br />O primeiro
campo, \"{{int:wikibase-gotolinkedpage-lookup-site}}\", é onde deve inserir a
língua e o código do ''site''.<br />No segundo campo,
\"{{int:wikibase-gotolinkedpage-lookup-item}}\", deve colocar o identificador
do objeto que procura.",
"wikibase-gotolinkedpage-error-page-not-found": "Não foi encontrada
nenhuma página para essa combinação de objeto e ''site''",
"wikibase-gotolinkedpage-error-item-id-invalid": "O identificador que
introduziu para o objeto é inválido",
"wikibase-gotolinkedpage-error-item-not-found": "O objeto não foi
encontrado",
@@ -173,8 +173,8 @@
"special-newitem": "Criar um objeto novo",
"wikibase-newitem-summary": "[[Special:Search|Verifique se o objeto já
existe]]!<br />Deve criar um [[{{int:Wikibase-label-helppage}}|rótulo]] e uma
[[{{int:Wikibase-description-helppage}}|descrição]] para todos os objetos
novos.",
"wikibase-newitem-fieldset": "Criar um objeto novo",
- "wikibase-newitem-site": "''Site'' da primeira página interligada",
- "wikibase-newitem-page": "Nome da primeira página interligada",
+ "wikibase-newitem-site": "''Site'' da primeira página ligada",
+ "wikibase-newitem-page": "Nome da primeira página ligada",
"wikibase-newitem-no-external-page": "A página \"$2\" não foi
encontrada em \"$1\".",
"wikibase-newitem-not-recognized-siteid": "O identificador de ''site''
fornecido não foi reconhecido.",
"wikibase-newitem-not-recognized-language": "O código de língua
fornecido não foi reconhecido.",
@@ -206,18 +206,18 @@
"wikibase-setlabeldescriptionaliases-aliases-label": "Nomes
alternativos:",
"wikibase-setlabeldescriptionaliases-submit": "Definir rótulo,
descrição e nomes alternativos",
"special-setsitelink": "Definir um link intersites",
- "wikibase-setsitelink-introfull": "Está a definir o ''link'' intersites
em \"$2\" para [[$1]].",
- "wikibase-setsitelink-intro": "Este formulário permite-lhe definir o
''link'' intersites de uma entidade. Deve fornecer o identificador da entidade
(ex: Q23), um código de língua (ex: \"pt\") e o ''link'' intersites a ser
definido.",
- "wikibase-setsitelink-intro-badges": "Adicionalmente, pode definir
vários emblemas para este ''link'' intersites, os quais são listados abaixo.",
+ "wikibase-setsitelink-introfull": "Está a definir o ''link intersites''
em \"$2\" para [[$1]].",
+ "wikibase-setsitelink-intro": "Este formulário permite-lhe definir o
''link intersites'' de uma entidade. Deve fornecer o identificador da entidade
(ex: Q23), um código de língua (ex: \"pt\") e o ''link intersites'' a ser
definido.",
+ "wikibase-setsitelink-intro-badges": "Adicionalmente, pode definir
vários emblemas para este ''link intersites'', os quais são listados abaixo.",
"wikibase-setsitelink-site": "Identificador do ''site'':",
- "wikibase-setsitelink-label": "''Link'' intersites:",
+ "wikibase-setsitelink-label": "''Link intersites'':",
"wikibase-setsitelink-badges": "Emblemas:",
- "wikibase-setsitelink-submit": "Definir o ''link'' intersites",
+ "wikibase-setsitelink-submit": "Definir o ''link intersites''",
"wikibase-setsitelink-invalid-site": "O identificador de ''site''
\"$1\" é desconhecido. Use um identificador de ''site'' existente, como
\"enwiki\", por favor.",
"wikibase-setsitelink-not-item": "O identificador $1 não pertence a um
objeto.",
"wikibase-setsitelink-not-badge": "O identificador $1 não é um
emblema.",
- "wikibase-setsitelink-add-failed": "Não foi possível gravar o ''link''
intersites.",
- "wikibase-setsitelink-remove-failed": "Não foi possível remover o
''link'' intersites.",
+ "wikibase-setsitelink-add-failed": "Não foi possível gravar o ''link
intersites''.",
+ "wikibase-setsitelink-remove-failed": "Não foi possível remover o
''link intersites''.",
"wikibase-modifyentity-id": "Identificador:",
"wikibase-modifyterm-language": "Código de língua:",
"special-mergeitems": "Fundir dois objetos",
@@ -286,7 +286,7 @@
"wikibase-entitydata-unsupported-format": "O formato de dados $1 não é
suportado por esta interface.",
"wikibase-entitydata-storage-error": "O carregamento da entidade $1
falhou.",
"wikibase-entitydata-title": "Dados da entidade",
- "wikibase-entitydata-text": "Esta página fornece uma interface de dados
interligados, com os valores de entidades. Forneça o identificador no URL, por
favor, usando sintaxe de subpáginas.\n* Aplica-se a negociação de conteúdo com
base no cabeçalho Accept do seu cliente. Isto significa que os dados da
entidade serão fornecidos no formato preferido do seu cliente. Para um
''browser'', será HTML, o que causa que o seu ''browser'' seja reencaminhado
para a página normal da entidade.\n* Pode pedir explicitamente um formato de
dados específico, se adicionar ao identificador da entidade a extensão de
ficheiro adequada: Q23.json devolverá dados no formato JSON, Q23.ttl devolverá
RDF/Turtle, e assim por diante.",
+ "wikibase-entitydata-text": "Esta página fornece uma interface de dados
ligados, com os valores de entidades. Forneça o identificador no URL, por
favor, usando sintaxe de subpáginas.\n* Aplica-se a negociação de conteúdo com
base no cabeçalho Accept do seu cliente. Isto significa que os dados da
entidade serão fornecidos no formato preferido do seu cliente. Para um
''browser'', será HTML, o que causa que o seu ''browser'' seja reencaminhado
para a página normal da entidade.\n* Pode pedir explicitamente um formato de
dados específico, se adicionar ao identificador da entidade a extensão de
ficheiro adequada: Q23.json devolverá dados no formato JSON, Q23.ttl devolverá
RDF/Turtle, e assim por diante.",
"special-redirectentity": "Redirecionar uma entidade",
"wikibase-redirectentity-success": "$1 foi redirecionada para $2.",
"wikibase-redirectentity-fromid": "O identificador a partir do qual
redirecionar",
@@ -345,9 +345,79 @@
"action-property-create": "criar propriedades",
"wikibase-pageinfo-subscription": "Wikis que subscrevem esta entidade",
"wikibase-pageinfo-subscription-none": "Nenhuma",
- "apihelp-wbcreateclaim-description": "Cria alegações do Wikidata.",
- "apihelp-wbeditentity-param-new": "Se definido, será criada uma nova
entidade.\nDefina aqui o tipo de entidade a ser criada.\nNão é permitido ter
aqui uma definição quando o <var>id</var> também está definido.",
+ "apihelp-wbavailablebadges-description": "Consulta os objetos de
emblemas disponíveis.",
+ "apihelp-wbavailablebadges-example-1": "Consulta todos os objetos de
emblemas disponíveis",
+ "apihelp-wbcreateclaim-description": "Cria alegações Wikidata.",
+ "apihelp-wbcreateclaim-param-baserevid": "O identificador numérico da
revisão na qual será baseada a modificação.\nÉ usado para detetar conflitos
durante a gravação.",
+ "apihelp-wbcreateclaim-param-bot": "Marcar esta edição como uma edição
por robô. Esta etiqueta URL só será respeitada se o utilizador pertencer ao
grupo \"robôs\".",
+ "apihelp-wbcreateclaim-param-entity": "Identificador da entidade à qual
a alegação está a ser adicionada",
+ "apihelp-wbcreateclaim-param-property": "Identificador da propriedade
asserção",
+ "apihelp-wbcreateclaim-param-value": "Valor da asserção ao criar uma
alegação com uma asserção que tenha um valor",
+ "apihelp-wbcreateclaim-param-snaktype": "O tipo de asserção",
+ "apihelp-wbcreateclaim-param-summary": "O resumo da edição.\nSerá
antecedido por um comentário gerado automaticamente. O tamanho limite do
comentário automático mais o resumo é 260 caracteres. Tudo o que exceder este
limite será cortado.",
+ "apihelp-wbcreateclaim-example-1": "Criar uma alegação para o objeto
Q42 da propriedade P9001 com a asserção \"sem valor\".",
+ "apihelp-wbcreateclaim-example-2": "Cria uma alegação para o objeto Q42
da propriedade P9002 com o valor de texto \"itsastring\".",
+ "apihelp-wbcreateclaim-example-3": "Cria uma alegação para o objeto Q42
da propriedade P9003 com um valor de objeto Q1",
+ "apihelp-wbcreateclaim-example-4": "Cria uma alegação para o objeto Q42
da propriedade P9004 com uma coordenada como valor de asserção",
+ "apihelp-wbcreateredirect-description": "Cria redirecionamentos de
entidades.",
+ "apihelp-wbcreateredirect-param-from": "Identificador da entidade para
a qual criar um redirecionamento",
+ "apihelp-wbcreateredirect-param-to": "Identificador da entidade para a
qual apontar o redirecionamento",
+ "apihelp-wbcreateredirect-param-bot": "Marcar esta edição como uma
edição por robô. Esta etiqueta URL só será respeitada se o utilizador pertencer
ao grupo \"robôs\".",
+ "apihelp-wbcreateredirect-example-1": "Tornar Q11 num redirecionamento
para Q12",
+ "apihelp-wbeditentity-description": "Cria uma única entidade Wikibase
nova e modifica-a com informação seriada.",
+ "apihelp-wbeditentity-param-id": "O identificador para a entidade,
incluindo o prefixo.\nUsar <var>id</var>, ou então <var>site</var> e
<var>title</var> em conjunto.",
+ "apihelp-wbeditentity-param-site": "Um identificador para o ''site'' no
qual a página reside.\nUsar em conjunto com <var>title</var> para criar um
''link intersites'' completo.",
+ "apihelp-wbeditentity-param-title": "Título da página a associar.\nUsar
em conjunto com <var>site</var> para criar um ''link intersites'' completo.",
+ "apihelp-wbeditentity-param-baserevid": "O identificador numérico da
revisão na qual será baseada a modificação.\nÉ usado para detetar conflitos
durante a gravação.",
+ "apihelp-wbeditentity-param-summary": "O resumo da edição.\nSerá
antecedido por um comentário gerado automaticamente. O tamanho limite do
comentário automático mais o resumo é 260 caracteres. Tudo o que exceder este
limite será cortado.",
+ "apihelp-wbeditentity-param-bot": "Marcar esta edição como uma edição
por robô. Esta etiqueta URL só será respeitada se o utilizador pertencer ao
grupo \"robôs\".",
+ "apihelp-wbeditentity-param-data": "O objeto seriado que será usado
como fonte dos dados.\nUma entidade nova recebe um identificador (''id'').",
+ "apihelp-wbeditentity-param-clear": "Se definido, a entidade completa
será esvaziada antes de prosseguir.\nA entidade não será gravada até ter sido
preenchida com \"dados\", possivelmente com algumas partes excluídas.",
+ "apihelp-wbeditentity-param-new": "Se definido, será criada uma nova
entidade.\nDefina aqui o tipo de entidade a ser criada.\nNão é permitido ter
aqui uma definição quando <var>id</var> também está definido.",
+ "apihelp-wbeditentity-example-1": "Criar um objeto novo vazio, devolver
a estrutura completa da entidade",
+ "apihelp-wbeditentity-example-2": "Criar um objeto novo e definir
rótulos para de e en",
+ "apihelp-wbeditentity-example-3": "Criar uma propriedade nova que
contém dados json, devolver a estrutura completa da entidade",
+ "apihelp-wbeditentity-example-4": "Limpar todos os dados da entidade
com o identificador Q42",
+ "apihelp-wbeditentity-example-5": "Limpar todos os dados da entidade
com o identificador Q42 e definir um rótulo para en",
+ "apihelp-wbeditentity-example-6": "Define o ''link intersites'' como
nowiki, sobrescrevendo-o se já existir",
+ "apihelp-wbeditentity-example-7": "Define a descrição para nb,
sobrescrevendo-a se já existir",
+ "apihelp-wblinktitles-param-bot": "Marcar esta edição como uma edição
por robô. Esta etiqueta URL só será respeitada se o utilizador pertencer ao
grupo \"robôs\".",
"apihelp-wbmergeitems-description": "Faz a fusão de vários itens.",
+ "apihelp-wbmergeitems-param-summary": "O resumo da edição.\nSerá
antecedido por um comentário gerado automaticamente. O tamanho limite do
comentário automático mais o resumo é 260 caracteres. Tudo o que exceder este
limite será cortado.",
+ "apihelp-wbmergeitems-param-bot": "Marcar esta edição como uma edição
por robô. Esta etiqueta URL só será respeitada se o utilizador pertencer ao
grupo \"robôs\".",
"apihelp-wbremoveclaims-description": "Remove alegações do Wikidata.",
- "apihelp-wbsetdescription-param-language": "Língua da descrição"
+ "apihelp-wbremoveclaims-param-baserevid": "O identificador numérico da
revisão na qual será baseada a modificação.\nÉ usado para detetar conflitos
durante a gravação.",
+ "apihelp-wbremoveclaims-param-bot": "Marcar esta edição como uma edição
por robô. Esta etiqueta URL só será respeitada se o utilizador pertencer ao
grupo \"robôs\".",
+ "apihelp-wbremoveclaims-param-summary": "O resumo da edição.\nSerá
antecedido por um comentário gerado automaticamente. O tamanho limite do
comentário automático mais o resumo é 260 caracteres. Tudo o que exceder este
limite será cortado.",
+ "apihelp-wbremovequalifiers-param-baserevid": "O identificador numérico
da revisão na qual será baseada a modificação.\nÉ usado para detetar conflitos
durante a gravação.",
+ "apihelp-wbremovequalifiers-param-bot": "Marcar esta edição como uma
edição por robô. Esta etiqueta URL só será respeitada se o utilizador pertencer
ao grupo \"robôs\".",
+ "apihelp-wbremovequalifiers-param-summary": "O resumo da edição.\nSerá
antecedido por um comentário gerado automaticamente. O tamanho limite do
comentário automático mais o resumo é 260 caracteres. Tudo o que exceder este
limite será cortado.",
+ "apihelp-wbremovereferences-param-baserevid": "O identificador numérico
da revisão na qual será baseada a modificação.\nÉ usado para detetar conflitos
durante a gravação.",
+ "apihelp-wbremovereferences-param-bot": "Marcar esta edição como uma
edição por robô. Esta etiqueta URL só será respeitada se o utilizador pertencer
ao grupo \"robôs\".",
+ "apihelp-wbremovereferences-param-summary": "O resumo da edição.\nSerá
antecedido por um comentário gerado automaticamente. O tamanho limite do
comentário automático mais o resumo é 260 caracteres. Tudo o que exceder este
limite será cortado.",
+ "apihelp-wbsetaliases-param-baserevid": "O identificador numérico da
revisão na qual será baseada a modificação.\nÉ usado para detetar conflitos
durante a gravação.",
+ "apihelp-wbsetaliases-param-summary": "O resumo da edição.\nSerá
antecedido por um comentário gerado automaticamente. O tamanho limite do
comentário automático mais o resumo é 260 caracteres. Tudo o que exceder este
limite será cortado.",
+ "apihelp-wbsetaliases-param-bot": "Marcar esta edição como uma edição
por robô. Esta etiqueta URL só será respeitada se o utilizador pertencer ao
grupo \"robôs\".",
+ "apihelp-wbsetclaim-param-summary": "O resumo da edição.\nSerá
antecedido por um comentário gerado automaticamente. O tamanho limite do
comentário automático mais o resumo é 260 caracteres. Tudo o que exceder este
limite será cortado.",
+ "apihelp-wbsetclaim-param-baserevid": "O identificador numérico da
revisão na qual será baseada a modificação.\nÉ usado para detetar conflitos
durante a gravação.",
+ "apihelp-wbsetclaim-param-bot": "Marcar esta edição como uma edição por
robô. Esta etiqueta URL só será respeitada se o utilizador pertencer ao grupo
\"robôs\".",
+ "apihelp-wbsetclaimvalue-param-summary": "O resumo da edição.\nSerá
antecedido por um comentário gerado automaticamente. O tamanho limite do
comentário automático mais o resumo é 260 caracteres. Tudo o que exceder este
limite será cortado.",
+ "apihelp-wbsetclaimvalue-param-baserevid": "O identificador numérico da
revisão na qual será baseada a modificação.\nÉ usado para detetar conflitos
durante a gravação.",
+ "apihelp-wbsetclaimvalue-param-bot": "Marcar esta edição como uma
edição por robô. Esta etiqueta URL só será respeitada se o utilizador pertencer
ao grupo \"robôs\".",
+ "apihelp-wbsetdescription-param-baserevid": "O identificador numérico
da revisão na qual será baseada a modificação.\nÉ usado para detetar conflitos
durante a gravação.",
+ "apihelp-wbsetdescription-param-summary": "O resumo da edição.\nSerá
antecedido por um comentário gerado automaticamente. O tamanho limite do
comentário automático mais o resumo é 260 caracteres. Tudo o que exceder este
limite será cortado.",
+ "apihelp-wbsetdescription-param-bot": "Marcar esta edição como uma
edição por robô. Esta etiqueta URL só será respeitada se o utilizador pertencer
ao grupo \"robôs\".",
+ "apihelp-wbsetdescription-param-language": "Língua da descrição",
+ "apihelp-wbsetlabel-param-baserevid": "O identificador numérico da
revisão na qual será baseada a modificação.\nÉ usado para detetar conflitos
durante a gravação.",
+ "apihelp-wbsetlabel-param-summary": "O resumo da edição.\nSerá
antecedido por um comentário gerado automaticamente. O tamanho limite do
comentário automático mais o resumo é 260 caracteres. Tudo o que exceder este
limite será cortado.",
+ "apihelp-wbsetlabel-param-bot": "Marcar esta edição como uma edição por
robô. Esta etiqueta URL só será respeitada se o utilizador pertencer ao grupo
\"robôs\".",
+ "apihelp-wbsetqualifier-param-summary": "O resumo da edição.\nSerá
antecedido por um comentário gerado automaticamente. O tamanho limite do
comentário automático mais o resumo é 260 caracteres. Tudo o que exceder este
limite será cortado.",
+ "apihelp-wbsetqualifier-param-baserevid": "O identificador numérico da
revisão na qual será baseada a modificação.\nÉ usado para detetar conflitos
durante a gravação.",
+ "apihelp-wbsetqualifier-param-bot": "Marcar esta edição como uma edição
por robô. Esta etiqueta URL só será respeitada se o utilizador pertencer ao
grupo \"robôs\".",
+ "apihelp-wbsetreference-param-summary": "O resumo da edição.\nSerá
antecedido por um comentário gerado automaticamente. O tamanho limite do
comentário automático mais o resumo é 260 caracteres. Tudo o que exceder este
limite será cortado.",
+ "apihelp-wbsetreference-param-baserevid": "O identificador numérico da
revisão na qual será baseada a modificação.\nÉ usado para detetar conflitos
durante a gravação.",
+ "apihelp-wbsetreference-param-bot": "Marcar esta edição como uma edição
por robô. Esta etiqueta URL só será respeitada se o utilizador pertencer ao
grupo \"robôs\".",
+ "apihelp-wbsetsitelink-param-baserevid": "O identificador numérico da
revisão na qual será baseada a modificação.\nÉ usado para detetar conflitos
durante a gravação.",
+ "apihelp-wbsetsitelink-param-summary": "O resumo da edição.\nSerá
antecedido por um comentário gerado automaticamente. O tamanho limite do
comentário automático mais o resumo é 260 caracteres. Tudo o que exceder este
limite será cortado.",
+ "apihelp-wbsetsitelink-param-bot": "Marcar esta edição como uma edição
por robô. Esta etiqueta URL só será respeitada se o utilizador pertencer ao
grupo \"robôs\"."
}
diff --git a/extensions/Wikibase/repo/i18n/sl.json
b/extensions/Wikibase/repo/i18n/sl.json
index 8d239eb..ff58b34 100644
--- a/extensions/Wikibase/repo/i18n/sl.json
+++ b/extensions/Wikibase/repo/i18n/sl.json
@@ -88,7 +88,7 @@
"wikibase-snakview-snaktypeselector-value": "vrednost po meri",
"wikibase-snakformat-invalid-value": "Neveljavna vrednost.",
"wikibase-snakformat-propertynotfound": "Lastnosti ni mogoče najti.",
- "wikibase-shortcopyrightwarning": "S klikom na gumb »$1« se strinjate s
[[$2|pogoji uporabe]] in nepreklicno soglašate z objavo svojega prispevka pod
licenco $3.",
+ "wikibase-shortcopyrightwarning": "S klikom na gumb »$1« se strinjaš s
[[$2|pogoji uporabe]] in nepreklicno soglašaš z objavo svojega prispevka pod
licenco $3.",
"wikibase-copyrighttooltip-acknowledge": "Te pogoje sprejmem za vsa
prihodnja urejanja. Tega sporočila ne prikaži več.",
"wikibase-entityselector-more": "več",
"wikibase-anonymouseditwarning": "Opozorilo: niste prijavljeni.\nV
povzetku urejanja tega predmeta bo shranjen vaš IP-naslov.",
diff --git a/extensions/Wikibase/repo/i18n/sv.json
b/extensions/Wikibase/repo/i18n/sv.json
index a439e82..ce399f7 100644
--- a/extensions/Wikibase/repo/i18n/sv.json
+++ b/extensions/Wikibase/repo/i18n/sv.json
@@ -485,6 +485,7 @@
"apihelp-query+wbsearch-example-1": "Sök efter \"abc\" på engelska, med
standardvärden för typ och begränsning",
"apihelp-query+wbsearch-example-2": "Sök efter \"abc\" på Engelska med
en gräns på 50",
"apihelp-query+wbsearch-example-3": "Sök efter \"alphabet\" på engelska
för typen egenskap",
+ "apihelp-query+wbsubscribers-param-limit": "Maximalt antal resultat",
"apihelp-query+wbsubscribers-example-1": "Hämta prenumeranter till
entitet Q42",
"apihelp-query+wbsubscribers-example-2": "Hämta prenumeranter till
entitet Q42 där url till Special:EntityUsage inkluderas",
"apihelp-wbsetaliases-description": "Anger alias för en
Wikibase-entitet.",
diff --git
a/extensions/Wikibase/repo/tests/phpunit/includes/Rdf/RdfBuilderTestData.php
b/extensions/Wikibase/repo/tests/phpunit/includes/Rdf/RdfBuilderTestData.php
index 31019eb..47d4dc4 100644
--- a/extensions/Wikibase/repo/tests/phpunit/includes/Rdf/RdfBuilderTestData.php
+++ b/extensions/Wikibase/repo/tests/phpunit/includes/Rdf/RdfBuilderTestData.php
@@ -211,7 +211,7 @@
list( $id, $type ) = $prop;
$fingerprint = new Fingerprint();
$fingerprint->setLabel( 'en', "Property$id" );
- $entity = new Property( PropertyId::newFromNumber( $id
), $fingerprint, $type );
+ $entity = new Property( new PropertyId( 'P' . $id ),
$fingerprint, $type );
$repo->putEntity( $entity );
}
diff --git
a/extensions/Wikibase/repo/tests/phpunit/includes/SnakFactoryTest.php
b/extensions/Wikibase/repo/tests/phpunit/includes/SnakFactoryTest.php
index 49adff1..03e2cc8 100644
--- a/extensions/Wikibase/repo/tests/phpunit/includes/SnakFactoryTest.php
+++ b/extensions/Wikibase/repo/tests/phpunit/includes/SnakFactoryTest.php
@@ -30,10 +30,10 @@
public function newInstance() {
$dataTypeLookup = new InMemoryDataTypeLookup();
- $dataTypeFactory = new DataTypeFactory( array( 'string' =>
'string' ) );
- $dataValueFactory = new DataValueFactory( new
DataValueDeserializer( array(
+ $dataTypeFactory = new DataTypeFactory( [ 'string' => 'string'
] );
+ $dataValueFactory = new DataValueFactory( new
DataValueDeserializer( [
'string' => StringValue::class,
- ) ) );
+ ] ) );
$dataTypeLookup->setDataTypeForProperty( new PropertyId( 'p1'
), 'string' );
@@ -56,56 +56,52 @@
$expectedSnakClass,
$expectedException = null
) {
- if ( is_int( $propertyId ) ) {
- $propertyId = PropertyId::newFromNumber( $propertyId );
- }
-
if ( $expectedException !== null ) {
$this->setExpectedException( $expectedException );
}
$service = $this->newInstance();
- $snak = $service->newSnak( $propertyId, $snakType, $rawValue );
+ $snak = $service->newSnak( new PropertyId( $propertyId ),
$snakType, $rawValue );
$this->assertInstanceOf( $expectedSnakClass, $snak );
}
public function newSnakProvider() {
- return array(
- 'novalue' => array(
- 1, 'novalue', null,
+ return [
+ 'novalue' => [
+ 'P1', 'novalue', null,
PropertyNoValueSnak::class,
- ),
- 'somevalue' => array(
- 1, 'somevalue', null,
+ ],
+ 'somevalue' => [
+ 'P1', 'somevalue', null,
PropertySomeValueSnak::class,
- ),
- 'value' => array(
- 1, 'value', '"hello"',
+ ],
+ 'value' => [
+ 'P1', 'value', '"hello"',
PropertyValueSnak::class,
- ),
- 'novalue/badprop' => array(
- 66, 'novalue', null,
+ ],
+ 'novalue/badprop' => [
+ 'P66', 'novalue', null,
PropertyNoValueSnak::class,
PropertyDataTypeLookupException::class
- ),
- 'somevalue/badprop' => array(
- 66, 'somevalue', null,
+ ],
+ 'somevalue/badprop' => [
+ 'P66', 'somevalue', null,
PropertySomeValueSnak::class,
PropertyDataTypeLookupException::class
- ),
- 'value/badprop' => array(
- 66, 'value', '"hello"',
+ ],
+ 'value/badprop' => [
+ 'P66', 'value', '"hello"',
PropertyValueSnak::class,
PropertyDataTypeLookupException::class
- ),
- 'value/badvalue' => array(
- 1, 'value', array( 'foo' ),
+ ],
+ 'value/badvalue' => [
+ 'P1', 'value', [ 'foo' ],
PropertyValueSnak::class,
InvalidArgumentException::class
- ),
- );
+ ],
+ ];
}
}
diff --git
a/extensions/Wikibase/repo/tests/phpunit/includes/Store/Sql/TermSearchKeyBuilderTest.php
b/extensions/Wikibase/repo/tests/phpunit/includes/Store/Sql/TermSearchKeyBuilderTest.php
index d2f7229..6239683 100644
---
a/extensions/Wikibase/repo/tests/phpunit/includes/Store/Sql/TermSearchKeyBuilderTest.php
+++
b/extensions/Wikibase/repo/tests/phpunit/includes/Store/Sql/TermSearchKeyBuilderTest.php
@@ -61,9 +61,7 @@
$builder->rebuildSearchKey();
// remove search key
- $term = new TermIndexEntry();
- $term->setLanguage( $languageCode );
- $term->setText( $searchText );
+ $term = new TermIndexEntry( [ 'termLanguage' => $languageCode,
'termText' => $searchText ] );
$options = array(
'caseSensitive' => false,
diff --git a/vendor/composer/installed.json b/vendor/composer/installed.json
index 65ab24b..409fdc7 100644
--- a/vendor/composer/installed.json
+++ b/vendor/composer/installed.json
@@ -1406,12 +1406,12 @@
"source": {
"type": "git",
"url":
"https://github.com/wikimedia/mediawiki-extensions-Wikibase.git",
- "reference": "bf46ae3908fbe6f332a0665e852e38e19c4776a0"
+ "reference": "23686670020cfc4f761d0e9d23c9c14f90871e76"
},
"dist": {
"type": "zip",
- "url":
"https://api.github.com/repos/wikimedia/mediawiki-extensions-Wikibase/zipball/bf46ae3908fbe6f332a0665e852e38e19c4776a0",
- "reference": "bf46ae3908fbe6f332a0665e852e38e19c4776a0",
+ "url":
"https://api.github.com/repos/wikimedia/mediawiki-extensions-Wikibase/zipball/23686670020cfc4f761d0e9d23c9c14f90871e76",
+ "reference": "23686670020cfc4f761d0e9d23c9c14f90871e76",
"shasum": ""
},
"require": {
@@ -1444,7 +1444,7 @@
"jakub-onderka/php-parallel-lint": "0.9.2",
"mediawiki/mediawiki-codesniffer": "0.4.0|0.5.0"
},
- "time": "2016-11-22 22:30:33",
+ "time": "2016-11-23 21:41:50",
"type": "mediawiki-extension",
"installation-source": "dist",
"autoload": {
--
To view, visit https://gerrit.wikimedia.org/r/323378
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings
Gerrit-MessageType: newchange
Gerrit-Change-Id: I3f11faa1e17fc6ef615dc7242b9444f62d638cb7
Gerrit-PatchSet: 1
Gerrit-Project: mediawiki/extensions/Wikidata
Gerrit-Branch: master
Gerrit-Owner: WikidataBuilder <[email protected]>
_______________________________________________
MediaWiki-commits mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits