WikidataBuilder has uploaded a new change for review.

  https://gerrit.wikimedia.org/r/230156

Change subject: New Wikidata Build - 2015-08-07T19:05:28+0000
......................................................................

New Wikidata Build - 2015-08-07T19:05:28+0000

Change-Id: I8f9accd789932dd9838292f81113411702c58815
---
M composer.lock
M extensions/Wikibase/client/includes/DataAccess/Scribunto/EntityAccessor.php
M 
extensions/Wikibase/client/includes/DataAccess/StatementTransclusionInteractor.php
M 
extensions/Wikibase/client/tests/phpunit/includes/Changes/ChangeHandlerTest.php
M extensions/Wikibase/lib/includes/ValuesFinder.php
M extensions/Wikibase/lib/includes/formatters/MwTimeIsoFormatter.php
M extensions/Wikibase/lib/tests/phpunit/store/Sql/SiteLinkTableTest.php
M extensions/Wikibase/lib/tests/phpunit/store/TermPropertyLabelResolverTest.php
M extensions/Wikibase/phpcs.xml
M 
extensions/Wikibase/repo/includes/Localizer/ChangeOpValidationExceptionLocalizer.php
R extensions/Wikibase/repo/includes/Localizer/DispatchingExceptionLocalizer.php
R extensions/Wikibase/repo/includes/Localizer/ExceptionLocalizer.php
R extensions/Wikibase/repo/includes/Localizer/GenericExceptionLocalizer.php
R extensions/Wikibase/repo/includes/Localizer/MessageExceptionLocalizer.php
R extensions/Wikibase/repo/includes/Localizer/ParseExceptionLocalizer.php
M extensions/Wikibase/repo/includes/WikibaseRepo.php
M extensions/Wikibase/repo/includes/api/ApiErrorReporter.php
M extensions/Wikibase/repo/includes/api/ApiHelperFactory.php
M extensions/Wikibase/repo/includes/api/ParseValue.php
M extensions/Wikibase/repo/includes/specials/SpecialEntitiesWithoutPage.php
M extensions/Wikibase/repo/includes/specials/SpecialItemsWithoutSitelinks.php
M extensions/Wikibase/repo/includes/specials/SpecialListProperties.php
M extensions/Wikibase/repo/includes/specials/SpecialMergeItems.php
M extensions/Wikibase/repo/includes/specials/SpecialModifyEntity.php
M extensions/Wikibase/repo/includes/specials/SpecialModifyTerm.php
M extensions/Wikibase/repo/includes/specials/SpecialNewEntity.php
M extensions/Wikibase/repo/includes/specials/SpecialNewProperty.php
M extensions/Wikibase/repo/includes/specials/SpecialRedirectEntity.php
M 
extensions/Wikibase/repo/includes/specials/SpecialSetLabelDescriptionAliases.php
M extensions/Wikibase/repo/includes/specials/SpecialSetSiteLink.php
M extensions/Wikibase/repo/includes/specials/SpecialWikibaseQueryPage.php
M 
extensions/Wikibase/repo/tests/phpunit/includes/BabelUserLanguageLookupTest.php
M 
extensions/Wikibase/repo/tests/phpunit/includes/Dumpers/JsonDumpGeneratorTest.php
R 
extensions/Wikibase/repo/tests/phpunit/includes/Localizer/DispatchingExceptionLocalizerTest.php
R 
extensions/Wikibase/repo/tests/phpunit/includes/Localizer/GenericExceptionLocalizerTest.php
R 
extensions/Wikibase/repo/tests/phpunit/includes/Localizer/MessageExceptionLocalizerTest.php
R 
extensions/Wikibase/repo/tests/phpunit/includes/Localizer/ParseExceptionLocalizerTest.php
M extensions/Wikibase/repo/tests/phpunit/includes/WikibaseRepoTest.php
M 
extensions/Wikibase/repo/tests/phpunit/includes/actions/EditEntityActionTest.php
M extensions/Wikibase/repo/tests/phpunit/includes/api/ApiErrorReporterTest.php
M extensions/Wikibase/repo/tests/phpunit/includes/api/ApiHelperFactoryTest.php
M extensions/Wikibase/repo/tests/phpunit/includes/api/ParseValueTest.php
M 
extensions/Wikibase/repo/tests/phpunit/includes/api/StatementModificationHelperTest.php
M 
extensions/Wikibase/repo/tests/phpunit/includes/specials/SpecialGoToLinkedPageTest.php
M 
extensions/Wikibase/repo/tests/phpunit/includes/specials/SpecialMergeItemsTest.php
M 
extensions/Wikibase/repo/tests/phpunit/includes/specials/SpecialRedirectEntityTest.php
M extensions/Wikibase/view/tests/phpunit/ClaimHtmlGeneratorTest.php
M extensions/Wikibase/view/tests/phpunit/EntityViewPlaceholderExpanderTest.php
M extensions/Wikibase/view/tests/phpunit/SnakHtmlGeneratorTest.php
M vendor/composer/autoload_classmap.php
M vendor/composer/installed.json
51 files changed, 348 insertions(+), 327 deletions(-)


  git pull ssh://gerrit.wikimedia.org:29418/mediawiki/extensions/Wikidata 
refs/changes/56/230156/1

diff --git a/composer.lock b/composer.lock
index 90ab2bb..9e3f199 100644
--- a/composer.lock
+++ b/composer.lock
@@ -1371,12 +1371,12 @@
             "source": {
                 "type": "git",
                 "url": 
"https://github.com/wikimedia/mediawiki-extensions-Wikibase.git";,
-                "reference": "872b06357b0c05017b091246c71db44e194ee88f"
+                "reference": "8fc76a7a6b4c5ca43622af7731d430094c934a37"
             },
             "dist": {
                 "type": "zip",
-                "url": 
"https://api.github.com/repos/wikimedia/mediawiki-extensions-Wikibase/zipball/872b06357b0c05017b091246c71db44e194ee88f";,
-                "reference": "872b06357b0c05017b091246c71db44e194ee88f",
+                "url": 
"https://api.github.com/repos/wikimedia/mediawiki-extensions-Wikibase/zipball/8fc76a7a6b4c5ca43622af7731d430094c934a37";,
+                "reference": "8fc76a7a6b4c5ca43622af7731d430094c934a37",
                 "shasum": ""
             },
             "require": {
@@ -1445,7 +1445,7 @@
                 "wikibaserepo",
                 "wikidata"
             ],
-            "time": "2015-08-07 09:37:35"
+            "time": "2015-08-07 15:21:21"
         },
         {
             "name": "wikibase/wikimedia-badges",
diff --git 
a/extensions/Wikibase/client/includes/DataAccess/Scribunto/EntityAccessor.php 
b/extensions/Wikibase/client/includes/DataAccess/Scribunto/EntityAccessor.php
index 73f911c..ba02c85 100644
--- 
a/extensions/Wikibase/client/includes/DataAccess/Scribunto/EntityAccessor.php
+++ 
b/extensions/Wikibase/client/includes/DataAccess/Scribunto/EntityAccessor.php
@@ -121,7 +121,7 @@
 
                try {
                        $entityObject = $this->entityLookup->getEntity( 
$entityId );
-               } catch( UnresolvedRedirectException $e ) {
+               } catch ( UnresolvedRedirectException $ex ) {
                        // We probably hit a double redirect
                        wfLogWarning(
                                'Encountered a UnresolvedRedirectException when 
trying to load ' . $prefixedEntityId
diff --git 
a/extensions/Wikibase/client/includes/DataAccess/StatementTransclusionInteractor.php
 
b/extensions/Wikibase/client/includes/DataAccess/StatementTransclusionInteractor.php
index 28c6ee8..96d6369 100644
--- 
a/extensions/Wikibase/client/includes/DataAccess/StatementTransclusionInteractor.php
+++ 
b/extensions/Wikibase/client/includes/DataAccess/StatementTransclusionInteractor.php
@@ -83,7 +83,7 @@
        ) {
                try {
                        $entity = $this->entityLookup->getEntity( $entityId );
-               } catch( UnresolvedRedirectException $e ) {
+               } catch ( UnresolvedRedirectException $ex ) {
                        // We probably hit a double redirect
                        wfLogWarning(
                                'Encountered a UnresolvedRedirectException when 
trying to load ' . $entityId->getSerialization()
diff --git 
a/extensions/Wikibase/client/tests/phpunit/includes/Changes/ChangeHandlerTest.php
 
b/extensions/Wikibase/client/tests/phpunit/includes/Changes/ChangeHandlerTest.php
index d3e0e61..9e695b4 100644
--- 
a/extensions/Wikibase/client/tests/phpunit/includes/Changes/ChangeHandlerTest.php
+++ 
b/extensions/Wikibase/client/tests/phpunit/includes/Changes/ChangeHandlerTest.php
@@ -153,36 +153,30 @@
         * @dataProvider provideHandleChanges
         */
        public function testHandleChanges() {
-               global $handleChangeCallCount, $handleChangesCallCount;
                $changes = func_get_args();
 
+               $spy = new \stdClass();
+               $spy->handleChangeCallCount = 0;
+               $spy->handleChangesCallCount = 0;
+
                $testHooks = array(
-                       'WikibaseHandleChange' => array( function( Change 
$change ) {
-                               global $handleChangeCallCount;
-                               $handleChangeCallCount++;
+                       'WikibaseHandleChange' => array( function( Change 
$change ) use ( $spy ) {
+                               $spy->handleChangeCallCount++;
                                return true;
                        } ),
-                       'WikibaseHandleChanges' => array( function( array 
$changes ) {
-                               global $handleChangesCallCount;
-                               $handleChangesCallCount++;
+                       'WikibaseHandleChanges' => array( function( array 
$changes ) use ( $spy ) {
+                               $spy->handleChangesCallCount++;
                                return true;
                        } )
                );
 
                $this->mergeMwGlobalArrayValue( 'wgHooks', $testHooks );
 
-               $handleChangeCallCount = 0;
-               $handleChangesCallCount = 0;
-
                $changeHandler = $this->getChangeHandler();
-
                $changeHandler->handleChanges( $changes );
 
-               $this->assertEquals( count( $changes ), $handleChangeCallCount 
);
-               $this->assertEquals( 1, $handleChangesCallCount );
-
-               unset( $handleChangeCallCount );
-               unset( $handleChangesCallCount );
+               $this->assertEquals( count( $changes ), 
$spy->handleChangeCallCount );
+               $this->assertEquals( 1, $spy->handleChangesCallCount );
        }
 
        public function provideGetUpdateActions() {
diff --git a/extensions/Wikibase/lib/includes/ValuesFinder.php 
b/extensions/Wikibase/lib/includes/ValuesFinder.php
index 61def38..fc1358c 100644
--- a/extensions/Wikibase/lib/includes/ValuesFinder.php
+++ b/extensions/Wikibase/lib/includes/ValuesFinder.php
@@ -29,7 +29,7 @@
        }
 
        /**
-        * Find all data values for the specified data type in the array of 
snaks.
+        * Find all data values for the specifie        d data type in the 
array of snaks.
         *
         * @param Snak[] $snaks
         * @param string $dataType
diff --git a/extensions/Wikibase/lib/includes/formatters/MwTimeIsoFormatter.php 
b/extensions/Wikibase/lib/includes/formatters/MwTimeIsoFormatter.php
index 8cb6bd1..3c81765 100644
--- a/extensions/Wikibase/lib/includes/formatters/MwTimeIsoFormatter.php
+++ b/extensions/Wikibase/lib/includes/formatters/MwTimeIsoFormatter.php
@@ -83,7 +83,7 @@
                }
 
                $mwTimestamp = $this->getMwTimestamp( $isoTimestamp, $precision 
);
-               $mwYear        = $this->language->sprintfDate(         'Y', 
$mwTimestamp );
+               $mwYear = $this->language->sprintfDate( 'Y', $mwTimestamp );
                $localizedDate = $this->language->sprintfDate( $dateFormat, 
$mwTimestamp );
 
                if ( $mwYear !== $localizedYear ) {
diff --git 
a/extensions/Wikibase/lib/tests/phpunit/store/Sql/SiteLinkTableTest.php 
b/extensions/Wikibase/lib/tests/phpunit/store/Sql/SiteLinkTableTest.php
index b04beac..9361e99 100644
--- a/extensions/Wikibase/lib/tests/phpunit/store/Sql/SiteLinkTableTest.php
+++ b/extensions/Wikibase/lib/tests/phpunit/store/Sql/SiteLinkTableTest.php
@@ -69,10 +69,6 @@
         * @depends testSaveLinksOfItem
         */
        public function testSaveLinksOfItem_duplicate() {
-               if ( wfGetDB( DB_MASTER )->getType() === 'sqlite' ) {
-                       $this->markTestSkipped( "Duplicated tables don't have 
indexes on them in SQLite, thus we can't test uniqueness handling." );
-               }
-
                $item = new Item( new ItemId( 'Q2' ) );
                $item->getSiteLinkList()->addNewSiteLink( 'enwiki', 'Beer' );
 
diff --git 
a/extensions/Wikibase/lib/tests/phpunit/store/TermPropertyLabelResolverTest.php 
b/extensions/Wikibase/lib/tests/phpunit/store/TermPropertyLabelResolverTest.php
index 91207bb..706a9c9 100644
--- 
a/extensions/Wikibase/lib/tests/phpunit/store/TermPropertyLabelResolverTest.php
+++ 
b/extensions/Wikibase/lib/tests/phpunit/store/TermPropertyLabelResolverTest.php
@@ -120,53 +120,53 @@
 
                return array(
                        array( // #0
-                               'de',   // lang
-                               $terms, // terms
-                               array(),  // labels
-                               array(),  // expected
+                               'de',
+                               $terms,
+                               array(), // labels
+                               array(), // expected
                        ),
                        array( // #1
-                               'de',   // lang
-                               $terms, // terms
-                               array(  // labels
+                               'de',
+                               $terms,
+                               array( // labels
                                        'Eins',
                                        'Zwei'
                                ),
-                               array(  // expected
+                               array( // expected
                                        'Eins' => new PropertyId( 'P1' ),
                                        'Zwei' => new PropertyId( 'P2' ),
                                )
                        ),
                        array( // #2
-                               'de',   // lang
-                               $terms, // terms
-                               array(  // labels
+                               'de',
+                               $terms,
+                               array( // labels
                                        'Drei',
                                        'Vier'
                                ),
-                               array(  // expected
+                               array( // expected
                                        'Drei' => new PropertyId( 'P3' ),
                                )
                        ),
                        array( // #3
-                               'en',   // lang
-                               $terms, // terms
-                               array(  // labels
+                               'en',
+                               $terms,
+                               array( // labels
                                        'Eins',
                                        'Zwei'
                                ),
-                               array()  // expected
+                               array() // expected
                        ),
                        array( // #4
-                               'en',   // lang
-                               $terms, // terms
-                               array(  // labels
+                               'en',
+                               $terms,
+                               array( // labels
                                        'One',
                                        'Two',
                                        'Three',
                                        'Four'
                                ),
-                               array(  // expected
+                               array( // expected
                                        'One' => new PropertyId( 'P1' ),
                                )
                        ),
diff --git a/extensions/Wikibase/phpcs.xml b/extensions/Wikibase/phpcs.xml
index f473eb4..9c0017b 100644
--- a/extensions/Wikibase/phpcs.xml
+++ b/extensions/Wikibase/phpcs.xml
@@ -6,8 +6,12 @@
 <ruleset name="MediaWiki">
 
        <rule ref="Generic.CodeAnalysis.ForLoopShouldBeWhileLoop" />
+       <rule ref="Generic.CodeAnalysis.ForLoopWithTestFunctionCall" />
        <rule ref="Generic.CodeAnalysis.JumbledIncrementer" />
        <rule ref="Generic.CodeAnalysis.UnnecessaryFinalModifier" />
+       <rule ref="Generic.CodeAnalysis.UnconditionalIfStatement">
+               <exclude-pattern>WikibaseClient\.example\.php</exclude-pattern>
+       </rule>
 
        <rule ref="Generic.ControlStructures" />
 
diff --git 
a/extensions/Wikibase/repo/includes/Localizer/ChangeOpValidationExceptionLocalizer.php
 
b/extensions/Wikibase/repo/includes/Localizer/ChangeOpValidationExceptionLocalizer.php
index c20418f..d6af9bb 100644
--- 
a/extensions/Wikibase/repo/includes/Localizer/ChangeOpValidationExceptionLocalizer.php
+++ 
b/extensions/Wikibase/repo/includes/Localizer/ChangeOpValidationExceptionLocalizer.php
@@ -7,7 +7,6 @@
 use Message;
 use ValueFormatters\ValueFormatter;
 use Wikibase\ChangeOp\ChangeOpValidationException;
-use Wikibase\Lib\Localizer\ExceptionLocalizer;
 use Wikibase\Repo\Validators\ValidatorErrorLocalizer;
 
 /**
diff --git 
a/extensions/Wikibase/lib/includes/Localizer/DispatchingExceptionLocalizer.php 
b/extensions/Wikibase/repo/includes/Localizer/DispatchingExceptionLocalizer.php
similarity index 97%
rename from 
extensions/Wikibase/lib/includes/Localizer/DispatchingExceptionLocalizer.php
rename to 
extensions/Wikibase/repo/includes/Localizer/DispatchingExceptionLocalizer.php
index b466c68..dd0191f 100644
--- 
a/extensions/Wikibase/lib/includes/Localizer/DispatchingExceptionLocalizer.php
+++ 
b/extensions/Wikibase/repo/includes/Localizer/DispatchingExceptionLocalizer.php
@@ -1,6 +1,6 @@
 <?php
 
-namespace Wikibase\Lib\Localizer;
+namespace Wikibase\Repo\Localizer;
 
 use Exception;
 use InvalidArgumentException;
diff --git a/extensions/Wikibase/lib/includes/Localizer/ExceptionLocalizer.php 
b/extensions/Wikibase/repo/includes/Localizer/ExceptionLocalizer.php
similarity index 96%
rename from extensions/Wikibase/lib/includes/Localizer/ExceptionLocalizer.php
rename to extensions/Wikibase/repo/includes/Localizer/ExceptionLocalizer.php
index fdacaa7..8d21570 100644
--- a/extensions/Wikibase/lib/includes/Localizer/ExceptionLocalizer.php
+++ b/extensions/Wikibase/repo/includes/Localizer/ExceptionLocalizer.php
@@ -1,6 +1,6 @@
 <?php
 
-namespace Wikibase\Lib\Localizer;
+namespace Wikibase\Repo\Localizer;
 
 use Exception;
 use InvalidArgumentException;
diff --git 
a/extensions/Wikibase/lib/includes/Localizer/GenericExceptionLocalizer.php 
b/extensions/Wikibase/repo/includes/Localizer/GenericExceptionLocalizer.php
similarity index 95%
rename from 
extensions/Wikibase/lib/includes/Localizer/GenericExceptionLocalizer.php
rename to 
extensions/Wikibase/repo/includes/Localizer/GenericExceptionLocalizer.php
index 1fdac61..0860c1c 100644
--- a/extensions/Wikibase/lib/includes/Localizer/GenericExceptionLocalizer.php
+++ b/extensions/Wikibase/repo/includes/Localizer/GenericExceptionLocalizer.php
@@ -1,6 +1,6 @@
 <?php
 
-namespace Wikibase\Lib\Localizer;
+namespace Wikibase\Repo\Localizer;
 
 use Exception;
 use Message;
diff --git 
a/extensions/Wikibase/lib/includes/Localizer/MessageExceptionLocalizer.php 
b/extensions/Wikibase/repo/includes/Localizer/MessageExceptionLocalizer.php
similarity index 96%
rename from 
extensions/Wikibase/lib/includes/Localizer/MessageExceptionLocalizer.php
rename to 
extensions/Wikibase/repo/includes/Localizer/MessageExceptionLocalizer.php
index cc9d071..2cfbd78 100644
--- a/extensions/Wikibase/lib/includes/Localizer/MessageExceptionLocalizer.php
+++ b/extensions/Wikibase/repo/includes/Localizer/MessageExceptionLocalizer.php
@@ -1,6 +1,6 @@
 <?php
 
-namespace Wikibase\Lib\Localizer;
+namespace Wikibase\Repo\Localizer;
 
 use Exception;
 use InvalidArgumentException;
diff --git 
a/extensions/Wikibase/lib/includes/Localizer/ParseExceptionLocalizer.php 
b/extensions/Wikibase/repo/includes/Localizer/ParseExceptionLocalizer.php
similarity index 97%
rename from 
extensions/Wikibase/lib/includes/Localizer/ParseExceptionLocalizer.php
rename to 
extensions/Wikibase/repo/includes/Localizer/ParseExceptionLocalizer.php
index d1f14fd..c470d1b 100644
--- a/extensions/Wikibase/lib/includes/Localizer/ParseExceptionLocalizer.php
+++ b/extensions/Wikibase/repo/includes/Localizer/ParseExceptionLocalizer.php
@@ -1,6 +1,6 @@
 <?php
 
-namespace Wikibase\Lib\Localizer;
+namespace Wikibase\Repo\Localizer;
 
 use Exception;
 use InvalidArgumentException;
diff --git a/extensions/Wikibase/repo/includes/WikibaseRepo.php 
b/extensions/Wikibase/repo/includes/WikibaseRepo.php
index e35b879..3d75f71 100644
--- a/extensions/Wikibase/repo/includes/WikibaseRepo.php
+++ b/extensions/Wikibase/repo/includes/WikibaseRepo.php
@@ -45,11 +45,11 @@
 use Wikibase\Lib\EntityRetrievingDataTypeLookup;
 use Wikibase\Lib\FormatterLabelDescriptionLookupFactory;
 use Wikibase\Lib\LanguageNameLookup;
-use Wikibase\Lib\Localizer\DispatchingExceptionLocalizer;
-use Wikibase\Lib\Localizer\ExceptionLocalizer;
-use Wikibase\Lib\Localizer\GenericExceptionLocalizer;
-use Wikibase\Lib\Localizer\MessageExceptionLocalizer;
-use Wikibase\Lib\Localizer\ParseExceptionLocalizer;
+use Wikibase\Repo\Localizer\DispatchingExceptionLocalizer;
+use Wikibase\Repo\Localizer\ExceptionLocalizer;
+use Wikibase\Repo\Localizer\GenericExceptionLocalizer;
+use Wikibase\Repo\Localizer\MessageExceptionLocalizer;
+use Wikibase\Repo\Localizer\ParseExceptionLocalizer;
 use Wikibase\Lib\OutputFormatSnakFormatterFactory;
 use Wikibase\Lib\OutputFormatValueFormatterFactory;
 use Wikibase\Lib\Parsers\SuffixEntityIdParser;
diff --git a/extensions/Wikibase/repo/includes/api/ApiErrorReporter.php 
b/extensions/Wikibase/repo/includes/api/ApiErrorReporter.php
index 3b64cbc..73243f6 100644
--- a/extensions/Wikibase/repo/includes/api/ApiErrorReporter.php
+++ b/extensions/Wikibase/repo/includes/api/ApiErrorReporter.php
@@ -10,7 +10,7 @@
 use LogicException;
 use Message;
 use Status;
-use Wikibase\Lib\Localizer\ExceptionLocalizer;
+use Wikibase\Repo\Localizer\ExceptionLocalizer;
 
 /**
  * ApiErrorReporter is a component for API modules that handles
diff --git a/extensions/Wikibase/repo/includes/api/ApiHelperFactory.php 
b/extensions/Wikibase/repo/includes/api/ApiHelperFactory.php
index 7cae4a3..8a73eda 100644
--- a/extensions/Wikibase/repo/includes/api/ApiHelperFactory.php
+++ b/extensions/Wikibase/repo/includes/api/ApiHelperFactory.php
@@ -9,7 +9,7 @@
 use Wikibase\DataModel\Services\Lookup\PropertyDataTypeLookup;
 use Wikibase\EditEntityFactory;
 use Wikibase\EntityFactory;
-use Wikibase\Lib\Localizer\ExceptionLocalizer;
+use Wikibase\Repo\Localizer\ExceptionLocalizer;
 use Wikibase\Lib\Store\EntityRevisionLookup;
 use Wikibase\Lib\Store\EntityTitleLookup;
 use Wikibase\SummaryFormatter;
diff --git a/extensions/Wikibase/repo/includes/api/ParseValue.php 
b/extensions/Wikibase/repo/includes/api/ParseValue.php
index ca108bb..6a516f0 100644
--- a/extensions/Wikibase/repo/includes/api/ParseValue.php
+++ b/extensions/Wikibase/repo/includes/api/ParseValue.php
@@ -17,7 +17,7 @@
 use ValueValidators\Error;
 use ValueValidators\NullValidator;
 use ValueValidators\ValueValidator;
-use Wikibase\Lib\Localizer\ExceptionLocalizer;
+use Wikibase\Repo\Localizer\ExceptionLocalizer;
 use Wikibase\Repo\DataTypeValidatorFactory;
 use Wikibase\Repo\ValueParserFactory;
 use Wikibase\Repo\WikibaseRepo;
@@ -214,7 +214,7 @@
                }
 
                if ( $validator ) {
-                       $validatorResult = $validator->validate( $value );
+                       $validatorResult = $validator->validate( $parseResult );
                        $validationStatus = 
$this->validatorErrorLocalizer->getResultStatus( $validatorResult );
 
                        $result['valid'] = $validationStatus->isOK();
diff --git 
a/extensions/Wikibase/repo/includes/specials/SpecialEntitiesWithoutPage.php 
b/extensions/Wikibase/repo/includes/specials/SpecialEntitiesWithoutPage.php
index 85361c6..123911e 100644
--- a/extensions/Wikibase/repo/includes/specials/SpecialEntitiesWithoutPage.php
+++ b/extensions/Wikibase/repo/includes/specials/SpecialEntitiesWithoutPage.php
@@ -3,6 +3,7 @@
 namespace Wikibase\Repo\Specials;
 
 use Html;
+use Wikibase\DataModel\Entity\EntityId;
 use Wikibase\EntityFactory;
 use Wikibase\Lib\ContentLanguages;
 use Wikibase\Repo\Store\EntityPerPage;
@@ -204,6 +205,11 @@
         * @see SpecialWikibaseQueryPage::getResult
         *
         * @since 0.4
+        *
+        * @param int $offset
+        * @param int $limit
+        *
+        * @return EntityId[]
         */
        protected function getResult( $offset = 0, $limit = 0 ) {
                return $this->entityPerPage->getEntitiesWithoutTerm( 
$this->termType, $this->language, $this->type, $limit, $offset );
diff --git 
a/extensions/Wikibase/repo/includes/specials/SpecialItemsWithoutSitelinks.php 
b/extensions/Wikibase/repo/includes/specials/SpecialItemsWithoutSitelinks.php
index 9d1d61c..59ab481 100644
--- 
a/extensions/Wikibase/repo/includes/specials/SpecialItemsWithoutSitelinks.php
+++ 
b/extensions/Wikibase/repo/includes/specials/SpecialItemsWithoutSitelinks.php
@@ -2,6 +2,7 @@
 
 namespace Wikibase\Repo\Specials;
 
+use Wikibase\DataModel\Entity\EntityId;
 use Wikibase\Repo\WikibaseRepo;
 
 /**
@@ -34,6 +35,11 @@
         * @see SpecialWikibaseQueryPage::getResult
         *
         * @since 0.4
+        *
+        * @param int $offset
+        * @param int $limit
+        *
+        * @return EntityId[]
         */
        protected function getResult( $offset = 0, $limit = 0 ) {
                $entityPerPage = 
WikibaseRepo::getDefaultInstance()->getStore()->newEntityPerPage();
diff --git 
a/extensions/Wikibase/repo/includes/specials/SpecialListProperties.php 
b/extensions/Wikibase/repo/includes/specials/SpecialListProperties.php
index 940cf50..1c31a6f 100644
--- a/extensions/Wikibase/repo/includes/specials/SpecialListProperties.php
+++ b/extensions/Wikibase/repo/includes/specials/SpecialListProperties.php
@@ -18,7 +18,7 @@
  * @licence GNU GPL v2+
  * @author Bene* < [email protected] >
  */
-class SpecialListProperties extends SpecialWikibasePage {
+class SpecialListProperties extends SpecialWikibaseQueryPage {
 
        /**
         * Max server side caching time in seconds.
@@ -173,8 +173,8 @@
                );
        }
 
-       private function showQuery() {
-               $propertyIds = $this->getPropertyIds();
+       protected function showQuery( array $query = array() ) {
+               $propertyIds = $this->getResult();
 
                if ( empty( $propertyIds ) ) {
                        $this->getOutput()->addWikiMsg( 'specialpage-empty' );
@@ -199,9 +199,12 @@
        }
 
        /**
+        * @param integer $offset Start to include at number of entries from 
the start title
+        * @param integer $limit Stop at number of entries after start of 
inclusion
+        *
         * @return PropertyId[]
         */
-       private function getPropertyIds() {
+       protected function getResult( $offset = 0, $limit = 0 ) {
                if ( $this->dataType === '' ) {
                        $propertyInfoForDataType = 
$this->propertyInfoStore->getAllPropertyInfo();
                } else {
diff --git a/extensions/Wikibase/repo/includes/specials/SpecialMergeItems.php 
b/extensions/Wikibase/repo/includes/specials/SpecialMergeItems.php
index 660ec29..84cc0d7 100644
--- a/extensions/Wikibase/repo/includes/specials/SpecialMergeItems.php
+++ b/extensions/Wikibase/repo/includes/specials/SpecialMergeItems.php
@@ -8,7 +8,7 @@
 use Wikibase\DataModel\Services\EntityId\EntityIdParser;
 use Wikibase\DataModel\Services\EntityId\EntityIdParsingException;
 use Wikibase\EntityRevision;
-use Wikibase\Lib\Localizer\ExceptionLocalizer;
+use Wikibase\Repo\Localizer\ExceptionLocalizer;
 use Wikibase\Lib\UserInputException;
 use Wikibase\Repo\Interactors\ItemMergeInteractor;
 use Wikibase\Repo\Interactors\TokenCheckInteractor;
@@ -240,7 +240,8 @@
 
                // Form body
                $this->getOutput()->addHTML(
-                       Html::input(
+                       Html::element( 'br' )
+                       . Html::input(
                                'wikibase-mergeitems-submit',
                                $this->msg( 'wikibase-mergeitems-submit' 
)->text(),
                                'submit',
@@ -305,8 +306,7 @@
                                'class' => 'wb-input',
                                'id' => 'wb-mergeitems-toid'
                        )
-               )
-               . Html::element( 'br' );
+               );
                // TODO: Selector for ignoreconflicts
        }
 
diff --git a/extensions/Wikibase/repo/includes/specials/SpecialModifyEntity.php 
b/extensions/Wikibase/repo/includes/specials/SpecialModifyEntity.php
index af3b8c0..ed13cdb 100644
--- a/extensions/Wikibase/repo/includes/specials/SpecialModifyEntity.php
+++ b/extensions/Wikibase/repo/includes/specials/SpecialModifyEntity.php
@@ -235,8 +235,7 @@
                                'class' => 'wb-input',
                                'id' => $id
                        )
-               )
-               . Html::element( 'br' );
+               );
        }
 
        /**
diff --git a/extensions/Wikibase/repo/includes/specials/SpecialModifyTerm.php 
b/extensions/Wikibase/repo/includes/specials/SpecialModifyTerm.php
index 0baeb0f..1d7a44e 100644
--- a/extensions/Wikibase/repo/includes/specials/SpecialModifyTerm.php
+++ b/extensions/Wikibase/repo/includes/specials/SpecialModifyTerm.php
@@ -200,8 +200,7 @@
                                'class' => 'wb-input',
                                'id' => 'wb-modifyterm-value',
                        )
-               )
-               . Html::element( 'br' );
+               );
 
                $languageName = Language::fetchLanguageName( 
$this->languageCode, $this->getLanguage()->getCode() );
 
@@ -230,6 +229,7 @@
                                $this->msg( 'wikibase-' . strtolower( 
$this->getName() ) . '-intro' )->parse()
                        )
                        . parent::getFormElements( $entity )
+                       . Html::element( 'br' )
                        . Html::element(
                                'label',
                                array(
@@ -258,7 +258,8 @@
                                // wikibase-setaliases-label
                                $this->msg( 'wikibase-' . strtolower( 
$this->getName() ) . '-label' )->text()
                        )
-                       . $valueinput;
+                       . $valueinput
+                       . Html::element( 'br' );
                }
        }
 
diff --git a/extensions/Wikibase/repo/includes/specials/SpecialNewEntity.php 
b/extensions/Wikibase/repo/includes/specials/SpecialNewEntity.php
index b42fe98..f535a3f 100644
--- a/extensions/Wikibase/repo/includes/specials/SpecialNewEntity.php
+++ b/extensions/Wikibase/repo/includes/specials/SpecialNewEntity.php
@@ -252,6 +252,7 @@
                                )->text(),
                        )
                )
+               . Html::element( 'br' )
                . Html::element(
                        'label',
                        array(
@@ -274,7 +275,9 @@
                                        $langName
                                )->text(),
                        )
-               ). Html::element(
+               )
+               . Html::element( 'br' )
+               . Html::element(
                        'label',
                        array(
                                'for' => 'wb-newentity-aliases',
@@ -333,6 +336,7 @@
                                        $this->getUser()->getEditToken()
                                )
                                . $additionalHtml
+                               . Html::element( 'br' )
                                . Html::input(
                                        'submit',
                                        $this->msg( 'wikibase-newentity-submit' 
)->text(),
diff --git a/extensions/Wikibase/repo/includes/specials/SpecialNewProperty.php 
b/extensions/Wikibase/repo/includes/specials/SpecialNewProperty.php
index e742d68..fda837e 100644
--- a/extensions/Wikibase/repo/includes/specials/SpecialNewProperty.php
+++ b/extensions/Wikibase/repo/includes/specials/SpecialNewProperty.php
@@ -100,6 +100,7 @@
                $selector = new DataTypeSelector( $dataTypeFactory->getTypes(), 
$this->getLanguage()->getCode() );
 
                return parent::additionalFormElements()
+                       . Html::element( 'br' )
                        . Html::element(
                                'label',
                                array(
diff --git 
a/extensions/Wikibase/repo/includes/specials/SpecialRedirectEntity.php 
b/extensions/Wikibase/repo/includes/specials/SpecialRedirectEntity.php
index 8d432fb..2a1bd6e 100644
--- a/extensions/Wikibase/repo/includes/specials/SpecialRedirectEntity.php
+++ b/extensions/Wikibase/repo/includes/specials/SpecialRedirectEntity.php
@@ -7,7 +7,7 @@
 use Wikibase\DataModel\Entity\EntityId;
 use Wikibase\DataModel\Services\EntityId\EntityIdParser;
 use Wikibase\DataModel\Services\EntityId\EntityIdParsingException;
-use Wikibase\Lib\Localizer\ExceptionLocalizer;
+use Wikibase\Repo\Localizer\ExceptionLocalizer;
 use Wikibase\Lib\UserInputException;
 use Wikibase\Repo\Interactors\RedirectCreationInteractor;
 use Wikibase\Repo\Interactors\TokenCheckInteractor;
diff --git 
a/extensions/Wikibase/repo/includes/specials/SpecialSetLabelDescriptionAliases.php
 
b/extensions/Wikibase/repo/includes/specials/SpecialSetLabelDescriptionAliases.php
index 5f36c20..bf3117d 100644
--- 
a/extensions/Wikibase/repo/includes/specials/SpecialSetLabelDescriptionAliases.php
+++ 
b/extensions/Wikibase/repo/includes/specials/SpecialSetLabelDescriptionAliases.php
@@ -170,7 +170,9 @@
                                        $this->languageCode
                                )
                                . $this->getLabeledInputField( 'label', 
$this->label )
+                               . Html::element( 'br' )
                                . $this->getLabeledInputField( 'description', 
$this->description )
+                               . Html::element( 'br' )
                                . $this->getLabeledInputField( 'aliases', 
implode( '|', $this->aliases ) );
                } else {
                        $intro = $this->msg( 
'wikibase-setlabeldescriptionaliases-intro' );
@@ -178,6 +180,7 @@
                        $languageCode = $this->languageCode ? : 
$this->getLanguage()->getCode();
 
                        $html = parent::getFormElements( $entity )
+                               . Html::element( 'br' )
                                . Html::label(
                                        $this->msg( 
'wikibase-modifyterm-language' )->text(),
                                        $fieldId,
@@ -201,7 +204,8 @@
                        array(),
                        $intro->parse()
                )
-               . $html;
+               . $html
+               . Html::element( 'br' );
        }
 
        /**
diff --git a/extensions/Wikibase/repo/includes/specials/SpecialSetSiteLink.php 
b/extensions/Wikibase/repo/includes/specials/SpecialSetSiteLink.php
index 0a14f86..e8fdb74 100644
--- a/extensions/Wikibase/repo/includes/specials/SpecialSetSiteLink.php
+++ b/extensions/Wikibase/repo/includes/specials/SpecialSetSiteLink.php
@@ -212,7 +212,8 @@
                if ( empty( $this->badges ) ) {
                        $this->badges = $this->site === null ? array() : 
$this->getBadges( $entity, $this->site );
                }
-               $pageinput = Html::element(
+               $pageinput = Html::element( 'br' )
+                       . Html::element(
                                'label',
                                array(
                                        'for' => 'wb-setsitelink-page',
@@ -272,6 +273,7 @@
                                $intro
                        )
                        . parent::getFormElements( $entity )
+                       . Html::element( 'br' )
                        . Html::element(
                                'label',
                                array(
@@ -289,7 +291,6 @@
                                        'id' => 'wb-setsitelink-site'
                                )
                        )
-                       . Html::element( 'br' )
                        . $pageinput;
                }
        }
diff --git 
a/extensions/Wikibase/repo/includes/specials/SpecialWikibaseQueryPage.php 
b/extensions/Wikibase/repo/includes/specials/SpecialWikibaseQueryPage.php
index 3be1b67..b8c19c4 100644
--- a/extensions/Wikibase/repo/includes/specials/SpecialWikibaseQueryPage.php
+++ b/extensions/Wikibase/repo/includes/specials/SpecialWikibaseQueryPage.php
@@ -92,12 +92,12 @@
         *
         * @since 0.4 (as abstract function with same interface in 0.3)
         *
-        * @param $entry
+        * @param EntityId $entityId
         *
-        * @return string
+        * @return string HTML
         */
-       protected function formatRow( $entry ) {
-               $title = $this->entityTitleLookup->getTitleForId( $entry );
+       protected function formatRow( $entityId ) {
+               $title = $this->entityTitleLookup->getTitleForId( $entityId );
                return Linker::linkKnown( $title );
        }
 
@@ -109,7 +109,7 @@
         * @param integer $offset Start to include at number of entries from 
the start title
         * @param integer $limit Stop at number of entries after start of 
inclusion
         *
-        * @return Array[]
+        * @return EntityId[]
         */
        abstract protected function getResult( $offset = 0, $limit = 0 );
 
@@ -128,9 +128,9 @@
                        list( $this->limit, $this->offset ) = 
$this->getRequest()->getLimitOffset();
                }
 
-               $result = $this->getResult( $this->offset, $this->limit + 1 );
+               $entityIds = $this->getResult( $this->offset, $this->limit + 1 
);
 
-               $this->numRows = count( $result );
+               $this->numRows = count( $entityIds );
 
                $out->addHTML( Html::openElement( 'div', array( 'class' => 
'mw-spcontent' ) ) );
 
@@ -155,7 +155,7 @@
                }
 
                $this->outputResults(
-                       $result,
+                       $entityIds,
                        // do not format the one extra row, if it exist
                        min( $this->numRows, $this->limit ),
                        $this->offset
@@ -173,15 +173,15 @@
         *
         * @since 0.3
         *
-        * @param EntityId[] $results
+        * @param EntityId[] $entityIds
         * @param integer $num number of available result rows
         * @param integer $offset paging offset
         */
-       protected function outputResults( array $results, $num, $offset ) {
+       protected function outputResults( array $entityIds, $num, $offset ) {
                if ( $num > 0 ) {
                        $html = Html::openElement( 'ol', array( 'start' => 
$offset + 1, 'class' => 'special' ) );
                        for ( $i = 0; $i < $num; $i++ ) {
-                               $row = $this->formatRow( $results[$i] );
+                               $row = $this->formatRow( $entityIds[$i] );
                                $html .= Html::rawElement( 'li', array(), $row 
);
                        }
                        $html .= Html::closeElement( 'ol' );
diff --git 
a/extensions/Wikibase/repo/tests/phpunit/includes/BabelUserLanguageLookupTest.php
 
b/extensions/Wikibase/repo/tests/phpunit/includes/BabelUserLanguageLookupTest.php
index 1d1f82a..97d779f 100644
--- 
a/extensions/Wikibase/repo/tests/phpunit/includes/BabelUserLanguageLookupTest.php
+++ 
b/extensions/Wikibase/repo/tests/phpunit/includes/BabelUserLanguageLookupTest.php
@@ -45,9 +45,9 @@
        ) {
                $message = $usersLanguage . ' with {{#babel:' . $babelLanguages 
. '}} in assert #';
 
-               $babelLanguages            = $this->split( $babelLanguages );
-               $userSpecifiedLanguages    = $this->split( 
$userSpecifiedLanguages );
-               $allExpected               = $this->split( $allExpected );
+               $babelLanguages = $this->split( $babelLanguages );
+               $userSpecifiedLanguages = $this->split( $userSpecifiedLanguages 
);
+               $allExpected = $this->split( $allExpected );
 
                $user = new User();
                // Required to not be anonymous
@@ -70,15 +70,15 @@
                        // 1. List of languages from the users babel box (as 
returned by the Babel extension)
                        // 2. List of usable user specified languages
                        // 3. Expected collection of all languages
-                       array( 'de', '',         '',         'de'       ),
-                       array( 'de', 'en',       'en',       'de|en'    ),
+                       array( 'de', '', '', 'de' ),
+                       array( 'de', 'en', 'en', 'de|en' ),
                        array( 'de', 'de|en|fr', 'de|en|fr', 'de|en|fr' ),
-                       array( 'en', '',         '',         'en',      ),
-                       array( 'en', 'en',       'en',       'en',      ),
+                       array( 'en', '', '', 'en' ),
+                       array( 'en', 'en', 'en', 'en' ),
                        array( 'en', 'de|en|fr', 'de|en|fr', 'en|de|fr' ),
 
                        // Codes reported from Babel are getting lower-cased
-                       array( 'en', 'nds-NL',   'nds-nl',   'en|nds-nl' ),
+                       array( 'en', 'nds-NL', 'nds-nl', 'en|nds-nl' ),
 
                        // Whatever we get from Babel will be retained
                        array( 'en', 'invalid-language-code', 
'invalid-language-code', 'en|invalid-language-code' ),
diff --git 
a/extensions/Wikibase/repo/tests/phpunit/includes/Dumpers/JsonDumpGeneratorTest.php
 
b/extensions/Wikibase/repo/tests/phpunit/includes/Dumpers/JsonDumpGeneratorTest.php
index a267cfb..003b274 100644
--- 
a/extensions/Wikibase/repo/tests/phpunit/includes/Dumpers/JsonDumpGeneratorTest.php
+++ 
b/extensions/Wikibase/repo/tests/phpunit/includes/Dumpers/JsonDumpGeneratorTest.php
@@ -148,8 +148,9 @@
                $result = array();
                $size = count( $ids );
 
-               for (; $offset < $size && count( $result ) < $limit; $offset++ 
) {
+               while ( $offset < $size && count( $result ) < $limit ) {
                        $id = $ids[ $offset ];
+                       $offset++;
 
                        if ( $entityType !== null && $entityType !== 
$id->getEntityType() ) {
                                continue;
diff --git 
a/extensions/Wikibase/lib/tests/phpunit/Localizer/DispatchingExceptionLocalizerTest.php
 
b/extensions/Wikibase/repo/tests/phpunit/includes/Localizer/DispatchingExceptionLocalizerTest.php
similarity index 86%
rename from 
extensions/Wikibase/lib/tests/phpunit/Localizer/DispatchingExceptionLocalizerTest.php
rename to 
extensions/Wikibase/repo/tests/phpunit/includes/Localizer/DispatchingExceptionLocalizerTest.php
index 35b6c62..c66e2df 100644
--- 
a/extensions/Wikibase/lib/tests/phpunit/Localizer/DispatchingExceptionLocalizerTest.php
+++ 
b/extensions/Wikibase/repo/tests/phpunit/includes/Localizer/DispatchingExceptionLocalizerTest.php
@@ -5,13 +5,13 @@
 use Exception;
 use RuntimeException;
 use ValueParsers\ParseException;
-use Wikibase\Lib\Localizer\DispatchingExceptionLocalizer;
-use Wikibase\Lib\Localizer\GenericExceptionLocalizer;
-use Wikibase\Lib\Localizer\MessageExceptionLocalizer;
-use Wikibase\Lib\Localizer\ParseExceptionLocalizer;
+use Wikibase\Repo\Localizer\DispatchingExceptionLocalizer;
+use Wikibase\Repo\Localizer\GenericExceptionLocalizer;
+use Wikibase\Repo\Localizer\MessageExceptionLocalizer;
+use Wikibase\Repo\Localizer\ParseExceptionLocalizer;
 
 /**
- * @covers Wikibase\Lib\Localizer\DispatchingExceptionLocalizer
+ * @covers Wikibase\Repo\Localizer\DispatchingExceptionLocalizer
  *
  * @group Wikibase
  * @group WikibaseLib
diff --git 
a/extensions/Wikibase/lib/tests/phpunit/Localizer/GenericExceptionLocalizerTest.php
 
b/extensions/Wikibase/repo/tests/phpunit/includes/Localizer/GenericExceptionLocalizerTest.php
similarity index 89%
rename from 
extensions/Wikibase/lib/tests/phpunit/Localizer/GenericExceptionLocalizerTest.php
rename to 
extensions/Wikibase/repo/tests/phpunit/includes/Localizer/GenericExceptionLocalizerTest.php
index 7695947..358f92c 100644
--- 
a/extensions/Wikibase/lib/tests/phpunit/Localizer/GenericExceptionLocalizerTest.php
+++ 
b/extensions/Wikibase/repo/tests/phpunit/includes/Localizer/GenericExceptionLocalizerTest.php
@@ -4,10 +4,10 @@
 
 use Exception;
 use RuntimeException;
-use Wikibase\Lib\Localizer\GenericExceptionLocalizer;
+use Wikibase\Repo\Localizer\GenericExceptionLocalizer;
 
 /**
- * @covers Wikibase\Lib\Localizer\GenericExceptionLocalizer
+ * @covers Wikibase\Repo\Localizer\GenericExceptionLocalizer
  *
  * @group Wikibase
  * @group WikibaseLib
diff --git 
a/extensions/Wikibase/lib/tests/phpunit/Localizer/MessageExceptionLocalizerTest.php
 
b/extensions/Wikibase/repo/tests/phpunit/includes/Localizer/MessageExceptionLocalizerTest.php
similarity index 91%
rename from 
extensions/Wikibase/lib/tests/phpunit/Localizer/MessageExceptionLocalizerTest.php
rename to 
extensions/Wikibase/repo/tests/phpunit/includes/Localizer/MessageExceptionLocalizerTest.php
index 7992cb8..d7d65b5 100644
--- 
a/extensions/Wikibase/lib/tests/phpunit/Localizer/MessageExceptionLocalizerTest.php
+++ 
b/extensions/Wikibase/repo/tests/phpunit/includes/Localizer/MessageExceptionLocalizerTest.php
@@ -3,11 +3,11 @@
 namespace Wikibase\Test;
 
 use Exception;
-use Wikibase\Lib\Localizer\MessageExceptionLocalizer;
+use Wikibase\Repo\Localizer\MessageExceptionLocalizer;
 use Wikibase\Lib\MessageException;
 
 /**
- * @covers Wikibase\Lib\Localizer\MessageExceptionLocalizer
+ * @covers Wikibase\Repo\Localizer\MessageExceptionLocalizer
  *
  * @group Wikibase
  * @group WikibaseLib
diff --git 
a/extensions/Wikibase/lib/tests/phpunit/Localizer/ParseExceptionLocalizerTest.php
 
b/extensions/Wikibase/repo/tests/phpunit/includes/Localizer/ParseExceptionLocalizerTest.php
similarity index 90%
rename from 
extensions/Wikibase/lib/tests/phpunit/Localizer/ParseExceptionLocalizerTest.php
rename to 
extensions/Wikibase/repo/tests/phpunit/includes/Localizer/ParseExceptionLocalizerTest.php
index 691328c..eb75d69 100644
--- 
a/extensions/Wikibase/lib/tests/phpunit/Localizer/ParseExceptionLocalizerTest.php
+++ 
b/extensions/Wikibase/repo/tests/phpunit/includes/Localizer/ParseExceptionLocalizerTest.php
@@ -4,10 +4,10 @@
 
 use Exception;
 use ValueParsers\ParseException;
-use Wikibase\Lib\Localizer\ParseExceptionLocalizer;
+use Wikibase\Repo\Localizer\ParseExceptionLocalizer;
 
 /**
- * @covers Wikibase\Lib\Localizer\ParseExceptionLocalizer
+ * @covers Wikibase\Repo\Localizer\ParseExceptionLocalizer
  *
  * @group Wikibase
  * @group WikibaseLib
diff --git 
a/extensions/Wikibase/repo/tests/phpunit/includes/WikibaseRepoTest.php 
b/extensions/Wikibase/repo/tests/phpunit/includes/WikibaseRepoTest.php
index 62fa957..c7fd55b 100644
--- a/extensions/Wikibase/repo/tests/phpunit/includes/WikibaseRepoTest.php
+++ b/extensions/Wikibase/repo/tests/phpunit/includes/WikibaseRepoTest.php
@@ -144,7 +144,7 @@
 
        public function testGetExceptionLocalizer() {
                $localizer = $this->getWikibaseRepo()->getExceptionLocalizer();
-               $this->assertInstanceOf( 
'Wikibase\Lib\Localizer\ExceptionLocalizer', $localizer );
+               $this->assertInstanceOf( 
'Wikibase\Repo\Localizer\ExceptionLocalizer', $localizer );
        }
 
        public function testGetEntityContentDataCodec() {
diff --git 
a/extensions/Wikibase/repo/tests/phpunit/includes/actions/EditEntityActionTest.php
 
b/extensions/Wikibase/repo/tests/phpunit/includes/actions/EditEntityActionTest.php
index 968ee9a..d7d8328 100644
--- 
a/extensions/Wikibase/repo/tests/phpunit/includes/actions/EditEntityActionTest.php
+++ 
b/extensions/Wikibase/repo/tests/phpunit/includes/actions/EditEntityActionTest.php
@@ -42,12 +42,12 @@
        }
 
        public function testActionForPage() {
-               $page = $this->getTestItemPage( "Berlin" );
+               $page = $this->getTestItemPage( 'Berlin' );
 
-               $action = $this->createAction( "edit", $page );
+               $action = $this->createAction( 'edit', $page );
                $this->assertInstanceOf( 'Wikibase\EditEntityAction', $action );
 
-               $action = $this->createAction( "submit", $page );
+               $action = $this->createAction( 'submit', $page );
                $this->assertInstanceOf( 'Wikibase\SubmitEntityAction', $action 
);
        }
 
@@ -87,203 +87,203 @@
 
                $cases = array(
                        array( //0: edit, no parameters
-                               'edit',   // action
+                               'edit', // action
                                'Berlin', // handle
-                               array(),  // params
-                               false,    // post
-                               null,     // user
-                               '/id="[^"]*\bwb-item\b[^"]*"/',     // 
htmlPattern: should show an item
+                               array(), // params
+                               false, // post
+                               null, // user
+                               '/id="[^"]*\bwb-item\b[^"]*"/', // htmlPattern: 
should show an item
                        ),
 
                        array( //1: submit, no parameters
                                'submit', // action
                                'Berlin', // handle
-                               array(),  // params
-                               false,    // post
-                               null,     // user
-                               '/id="[^"]*\bwb-item\b[^"]*"/',     // 
htmlPattern: should show an item
+                               array(), // params
+                               false, // post
+                               null, // user
+                               '/id="[^"]*\bwb-item\b[^"]*"/', // htmlPattern: 
should show an item
                        ),
 
                        // -- show undo form -----------------------------------
                        array( //2: // undo form with legal undo
-                               'edit',   // action
+                               'edit', // action
                                'Berlin', // handle
-                               array(    // params
+                               array( // params
                                        'undo' => 0, // current revision
                                ),
-                               false,    // post
-                               null,     // user
+                               false, // post
+                               null, // user
                                '/undo-success/', // htmlPattern: should be a 
success
                        ),
 
                        array( //3: // undo form with legal undo and undoafter
-                               'edit',   // action
+                               'edit', // action
                                'Berlin', // handle
-                               array(    // params
+                               array( // params
                                        'undo' => 0, // current revision
                                        'undoafter' => -1, // previous revision
                                ),
-                               false,    // post
-                               null,     // user
+                               false, // post
+                               null, // user
                                '/undo-success/', // htmlPattern: should be a 
success
                        ),
 
                        array( //4: // undo form with illegal undo == undoafter
-                               'edit',   // action
+                               'edit', // action
                                'Berlin', // handle
-                               array(    // params
+                               array( // params
                                        'undo' => -1, // previous revision
                                        'undoafter' => -1, // previous revision
                                ),
-                               false,    // post
-                               null,     // user
+                               false, // post
+                               null, // user
                                '/wikibase-undo-samerev/', // htmlPattern: 
should contain error
                        ),
 
                        array( //5: // undo form with legal undoafter
-                               'edit',   // action
+                               'edit', // action
                                'Berlin', // handle
-                               array(    // params
+                               array( // params
                                        'undoafter' => -1, // previous revision
                                ),
-                               false,    // post
-                               null,     // user
+                               false, // post
+                               null, // user
                                '/undo-success/', // htmlPattern: should be a 
success
                        ),
 
                        array( //6: // undo form with illegal undo
-                               'edit',   // action
+                               'edit', // action
                                'Berlin', // handle
-                               array(    // params
+                               array( // params
                                        'undo' => -2, // first revision
                                ),
-                               false,    // post
-                               null,     // user
+                               false, // post
+                               null, // user
                                '/wikibase-undo-firstrev/', // htmlPattern: 
should contain error
                        ),
 
                        array( //7: // undo form with illegal undoafter
-                               'edit',   // action
+                               'edit', // action
                                'Berlin', // handle
-                               array(    // params
+                               array( // params
                                        'undoafter' => 0, // current revision
                                ),
-                               false,    // post
-                               null,     // user
+                               false, // post
+                               null, // user
                                '/wikibase-undo-samerev/', // htmlPattern: 
should contain error
                        ),
 
                        // -- show restore form 
-----------------------------------
                        array( //8: // restore form with legal restore
-                               'edit',   // action
+                               'edit', // action
                                'Berlin', // handle
-                               array(    // params
+                               array( // params
                                        'restore' => -1, // previous revision
                                ),
-                               false,    // post
-                               null,     // user
+                               false, // post
+                               null, // user
                                '/class="diff/', // htmlPattern: should be a 
success and contain a diff (undo-success is not shown for restore)
                        ),
 
                        array( //9: // restore form with illegal restore
-                               'edit',   // action
+                               'edit', // action
                                'Berlin', // handle
-                               array(    // params
+                               array( // params
                                        'restore' => 0, // current revision
                                ),
-                               false,    // post
-                               null,     // user
+                               false, // post
+                               null, // user
                                '/wikibase-undo-samerev/', // htmlPattern: 
should contain error
                        ),
 
                        // -- bad revision -----------------------------------
                        array( //10: // undo bad revision
-                               'edit',   // action
+                               'edit', // action
                                'Berlin', // handle
-                               array(    // params
+                               array( // params
                                        'undo' => 12345678, // bad revision
                                ),
-                               false,    // post
-                               null,     // user
+                               false, // post
+                               null, // user
                                '/undo-norev/', // htmlPattern: should contain 
error
                        ),
 
                        array( //11: // undoafter bad revision with good undo
-                               'edit',   // action
+                               'edit', // action
                                'Berlin', // handle
-                               array(    // params
+                               array( // params
                                        'undo' => 0, // current revision
                                        'undoafter' => 12345678, // bad revision
                                ),
-                               false,    // post
-                               null,     // user
+                               false, // post
+                               null, // user
                                '/undo-norev/', // htmlPattern: should contain 
error
                        ),
 
                        array( //12: // undoafter bad revision
-                               'edit',   // action
+                               'edit', // action
                                'Berlin', // handle
-                               array(    // params
+                               array( // params
                                        'undoafter' => 12345678, // bad revision
                                ),
-                               false,    // post
-                               null,     // user
+                               false, // post
+                               null, // user
                                '/undo-norev/', // htmlPattern: should contain 
error
                        ),
 
                        array( //13: // restore bad revision
-                               'edit',   // action
+                               'edit', // action
                                'Berlin', // handle
-                               array(    // params
+                               array( // params
                                        'restore' => 12345678, // bad revision
                                ),
-                               false,    // post
-                               null,     // user
+                               false, // post
+                               null, // user
                                '/undo-norev/', // htmlPattern: should contain 
error
                        ),
 
                        // -- bad page -----------------------------------
                        array( //14: // non-existing page
-                               'edit',   // action
-                               Title::newFromText( "XXX", 
$this->getItemNamespace() ),
-                               array(    // params
-                                       'restore' => array( "London", 0 ), // 
ok revision
+                               'edit', // action
+                               Title::newFromText( 'XXX', 
$this->getItemNamespace() ),
+                               array( // params
+                                       'restore' => array( 'London', 0 ), // 
ok revision
                                ),
-                               false,    // post
-                               null,     // user
+                               false, // post
+                               null, // user
                                '/missing-article/', // htmlPattern: should 
contain error
                        ),
 
                        array( //15: // undo revision from different pages
-                               'edit',   // action class
-                               "Berlin", // handle
-                               array(    // params
-                                       'undo' => array( "London", 0 ), // 
wrong page
+                               'edit', // action class
+                               'Berlin', // handle
+                               array( // params
+                                       'undo' => array( 'London', 0 ), // 
wrong page
                                ),
-                               false,    // post
-                               null,     // user
+                               false, // post
+                               null, // user
                                '/wikibase-undo-badpage/', // htmlPattern: 
should contain error
                        ),
 
                        array( //16: // undoafter revision from different pages
-                               'edit',   // action class
-                               "Berlin", // handle
-                               array(    // params
-                                       'undoafter' => array( "London", -1 ), 
// wrong page
+                               'edit', // action class
+                               'Berlin', // handle
+                               array( // params
+                                       'undoafter' => array( 'London', -1 ), 
// wrong page
                                ),
-                               false,    // post
-                               null,     // user
+                               false, // post
+                               null, // user
                                '/wikibase-undo-badpage/', // htmlPattern: 
should contain error
                        ),
 
                        array( //17: // restore revision from different pages
-                               'edit',   // action class
-                               "Berlin", // handle
-                               array(    // params
-                                       'restore' => array( "London", -1 ), // 
wrong page
+                               'edit', // action class
+                               'Berlin', // handle
+                               array( // params
+                                       'restore' => array( 'London', -1 ), // 
wrong page
                                ),
-                               false,    // post
-                               null,     // user
+                               false, // post
+                               null, // user
                                '/wikibase-undo-badpage/', // htmlPattern: 
should contain error
                        ),
 
@@ -292,13 +292,13 @@
                if ( self::shouldTestRedirects() ) {
                        // -- show undo form for redirect 
-----------------------------------
                        $cases[] = array( //18: // undo form with legal undo
-                               'edit',   // action
+                               'edit', // action
                                'Berlin2', // handle
-                               array(    // params
+                               array( // params
                                        'undo' => 0, // current revision
                                ),
-                               false,    // post
-                               null,     // user
+                               false, // post
+                               null, // user
                                '/undo-success/', // htmlPattern: should be a 
success
                        );
                }
@@ -327,14 +327,14 @@
                        array( //0: submit with legal undo, but don't post
                                'submit', // action
                                'Berlin', // handle
-                               array(    // params
+                               array( // params
                                        'wpSave' => 1,
                                        'wpEditToken' => true, // automatic 
token
-                                       'undo' => 0,     // current revision
+                                       'undo' => 0, // current revision
                                ),
-                               false,    // post
-                               null,     // user
-                               null,     // htmlPattern
+                               false, // post
+                               null, // user
+                               null, // htmlPattern
                                array(
                                        'redirect' => 
'/[&?]action=edit&undo=\d+/', // redirect to undo form
                                )
@@ -343,13 +343,13 @@
                        array( //1: submit with legal undo, but omit wpSave
                                'submit', // action
                                'Berlin', // handle
-                               array(    // params
+                               array( // params
                                        'wpEditToken' => true, // automatic 
token
-                                       'undo' => 0,     // current revision
+                                       'undo' => 0, // current revision
                                ),
-                               true,    // post
-                               null,     // user
-                               null,     // htmlPattern
+                               true, // post
+                               null, // user
+                               null, // htmlPattern
                                array(
                                        'redirect' => 
'/[&?]action=edit&undo=\d+/', // redirect to undo form
                                )
@@ -359,14 +359,14 @@
                        array( //2: // undo form with legal undo
                                'submit', // action
                                'Berlin', // handle
-                               array(    // params
+                               array( // params
                                        'wpSave' => 1,
                                        'wpEditToken' => true, // automatic 
token
-                                       'undo' => 0,     // current revision
+                                       'undo' => 0, // current revision
                                ),
-                               true,    // post
-                               null,    // user
-                               null,    // htmlPattern
+                               true, // post
+                               null, // user
+                               null, // htmlPattern
                                array(
                                        'redirect' => '![:/=]Q\d+$!' // expect 
success and redirect to page
                                ),
@@ -375,15 +375,15 @@
                        array( //3: // undo form with legal undo and undoafter
                                'submit', // action
                                'Berlin', // handle
-                               array(    // params
+                               array( // params
                                        'wpSave' => 1,
                                        'wpEditToken' => true, // automatic 
token
                                        'undo' => 0, // current revision
                                        'undoafter' => -1, // previous revision
                                ),
-                               true,    // post
-                               null,    // user
-                               null,    // htmlPattern
+                               true, // post
+                               null, // user
+                               null, // htmlPattern
                                array(
                                        'redirect' => '![:/=]Q\d+$!' // expect 
success and redirect to page
                                ),
@@ -392,28 +392,28 @@
                        array( //4: // undo form with illegal undo == undoafter
                                'submit', // action
                                'Berlin', // handle
-                               array(    // params
+                               array( // params
                                        'wpSave' => 1,
                                        'wpEditToken' => true, // automatic 
token
                                        'undo' => -1, // previous revision
                                        'undoafter' => -1, // previous revision
                                ),
-                               true,    // post
-                               null,     // user
+                               true, // post
+                               null, // user
                                '/wikibase-undo-samerev/', // htmlPattern: 
should contain error
                        ),
 
                        array( //5: // undo form with legal undoafter
                                'submit', // action
                                'Berlin', // handle
-                               array(    // params
+                               array( // params
                                        'wpSave' => 1,
                                        'wpEditToken' => true, // automatic 
token
                                        'undoafter' => -1, // previous revision
                                ),
-                               true,    // post
-                               null,     // user
-                               null,    // htmlPattern
+                               true, // post
+                               null, // user
+                               null, // htmlPattern
                                array(
                                        'redirect' => '![:/=]Q\d+$!' // expect 
success and redirect to page
                                ),
@@ -422,26 +422,26 @@
                        array( //6: // undo form with illegal undo
                                'submit', // action
                                'Berlin', // handle
-                               array(    // params
+                               array( // params
                                        'wpSave' => 1,
                                        'wpEditToken' => true, // automatic 
token
                                        'undo' => -2, // first revision
                                ),
-                               true,    // post
-                               null,     // user
+                               true, // post
+                               null, // user
                                '/wikibase-undo-firstrev/', // htmlPattern: 
should contain error
                        ),
 
                        array( //7: // undo form with illegal undoafter
                                'submit', // action
                                'Berlin', // handle
-                               array(    // params
+                               array( // params
                                        'wpSave' => 1,
                                        'wpEditToken' => true, // automatic 
token
                                        'undoafter' => 0, // current revision
                                ),
-                               true,    // post
-                               null,     // user
+                               true, // post
+                               null, // user
                                '/wikibase-undo-samerev/', // htmlPattern: 
should contain error
                        ),
 
@@ -449,14 +449,14 @@
                        array( //8: // restore form with legal restore
                                'submit', // action
                                'Berlin', // handle
-                               array(    // params
+                               array( // params
                                        'wpSave' => 1,
                                        'wpEditToken' => true, // automatic 
token
                                        'restore' => -1, // previous revision
                                ),
-                               true,    // post
-                               null,     // user
-                               null,    // htmlPattern
+                               true, // post
+                               null, // user
+                               null, // htmlPattern
                                array(
                                        'redirect' => '![:/=]Q\d+$!' // expect 
success and redirect to page
                                ),
@@ -465,13 +465,13 @@
                        array( //9: // restore form with illegal restore
                                'submit', // action
                                'Berlin', // handle
-                               array(    // params
+                               array( // params
                                        'wpSave' => 1,
                                        'wpEditToken' => true, // automatic 
token
                                        'restore' => 0, // current revision
                                ),
-                               true,    // post
-                               null,     // user
+                               true, // post
+                               null, // user
                                '/wikibase-undo-samerev/', // htmlPattern: 
should contain error
                        ),
 
@@ -479,106 +479,106 @@
                        array( //10: // undo bad revision
                                'submit', // action
                                'Berlin', // handle
-                               array(    // params
+                               array( // params
                                        'wpSave' => 1,
                                        'wpEditToken' => true, // automatic 
token
                                        'undo' => 12345678, // bad revision
                                ),
-                               true,    // post
-                               null,     // user
+                               true, // post
+                               null, // user
                                '/undo-norev/', // htmlPattern: should contain 
error
                        ),
 
                        array( //11: // undoafter bad revision with good undo
                                'submit', // action
                                'Berlin', // handle
-                               array(    // params
+                               array( // params
                                        'wpSave' => 1,
                                        'wpEditToken' => true, // automatic 
token
                                        'undo' => 0, // current revision
                                        'undoafter' => 12345678, // bad revision
                                ),
-                               true,    // post
-                               null,     // user
+                               true, // post
+                               null, // user
                                '/undo-norev/', // htmlPattern: should contain 
error
                        ),
 
                        array( //12: // undoafter bad revision
                                'submit', // action
                                'Berlin', // handle
-                               array(    // params
+                               array( // params
                                        'wpSave' => 1,
                                        'wpEditToken' => true, // automatic 
token
                                        'undoafter' => 12345678, // bad revision
                                ),
-                               true,    // post
-                               null,     // user
+                               true, // post
+                               null, // user
                                '/undo-norev/', // htmlPattern: should contain 
error
                        ),
 
                        array( //13: // restore bad revision
                                'submit', // action
                                'Berlin', // handle
-                               array(    // params
+                               array( // params
                                        'wpSave' => 1,
                                        'wpEditToken' => true, // automatic 
token
                                        'restore' => 12345678, // bad revision
                                ),
-                               true,    // post
-                               null,     // user
+                               true, // post
+                               null, // user
                                '/undo-norev/', // htmlPattern: should contain 
error
                        ),
 
                        // -- bad page -----------------------------------
                        array( //14: // non-existing page
                                'submit', // action
-                               Title::newFromText( "XXX", 
$this->getItemNamespace() ),
-                               array(    // params
+                               Title::newFromText( 'XXX', 
$this->getItemNamespace() ),
+                               array( // params
                                        'wpSave' => 1,
                                        'wpEditToken' => true, // automatic 
token
-                                       'restore' => array( "London", 0 ), // 
ok revision
+                                       'restore' => array( 'London', 0 ), // 
ok revision
                                ),
-                               true,    // post
-                               null,     // user
+                               true, // post
+                               null, // user
                                '/missing-article/', // htmlPattern: should 
contain error
                        ),
 
                        array( //15: // undo revision from different pages
                                'submit', // action
-                               "Berlin", // handle
-                               array(    // params
+                               'Berlin', // handle
+                               array( // params
                                        'wpSave' => 1,
                                        'wpEditToken' => true, // automatic 
token
-                                       'undo' => array( "London", 0 ), // 
wrong page
+                                       'undo' => array( 'London', 0 ), // 
wrong page
                                ),
-                               true,    // post
-                               null,     // user
+                               true, // post
+                               null, // user
                                '/wikibase-undo-badpage/', // htmlPattern: 
should contain error
                        ),
 
                        array( //16: // undoafter revision from different pages
                                'submit', // action
-                               "Berlin", // handle
-                               array(    // params
+                               'Berlin', // handle
+                               array( // params
                                        'wpSave' => 1,
                                        'wpEditToken' => true, // automatic 
token
-                                       'undoafter' => array( "London", -1 ), 
// wrong page
+                                       'undoafter' => array( 'London', -1 ), 
// wrong page
                                ),
-                               true,    // post
-                               null,     // user
+                               true, // post
+                               null, // user
                                '/wikibase-undo-badpage/', // htmlPattern: 
should contain error
                        ),
 
                        array( //17: // restore revision from different pages
                                'submit', // action
-                               "Berlin", // handle
-                               array(    // params
+                               'Berlin', // handle
+                               array( // params
                                        'wpSave' => 1,
                                        'wpEditToken' => true, // automatic 
token
-                                       'restore' => array( "London", -1 ), // 
wrong page
+                                       'restore' => array( 'London', -1 ), // 
wrong page
                                ),
-                               true,    // post
-                               null,     // user
+                               true, // post
+                               null, // user
                                '/wikibase-undo-badpage/', // htmlPattern: 
should contain error
                        ),
 
@@ -586,27 +586,27 @@
                        array( //18: submit with legal undo, but wrong token
                                'submit', // action
                                'Berlin', // handle
-                               array(    // params
+                               array( // params
                                        'wpSave' => 1,
                                        'wpEditToken' => 'xyz', // bad token
-                                       'undo' => 0,     // current revision
+                                       'undo' => 0, // current revision
                                ),
-                               true,    // post
-                               null,     // user
-                               '/token_suffix_mismatch/',     // htmlPattern: 
should contain error
+                               true, // post
+                               null, // user
+                               '/token_suffix_mismatch/', // htmlPattern: 
should contain error
                        ),
 
                        // -- incomplete form 
-----------------------------------
                        array( //19: submit without undo/undoafter/restore
                                'submit', // action
                                'Berlin', // handle
-                               array(    // params
+                               array( // params
                                        'wpSave' => 1,
                                        'wpEditToken' => true, // bad token
                                ),
-                               true,    // post
-                               null,     // user
-                               '/id="[^"]*\bwb-item\b[^"]*"/',     // 
htmlPattern: should show item
+                               true, // post
+                               null, // user
+                               '/id="[^"]*\bwb-item\b[^"]*"/', // htmlPattern: 
should show item
                        ),
 
                );
@@ -701,7 +701,7 @@
                        array( //0: undo last revision
                                'Berlin', //handle
                                array(
-                                       'undo' => 0,  // last revision
+                                       'undo' => 0, // last revision
                                ),
                                array( //expected
                                        'descriptions' => array(
@@ -714,7 +714,7 @@
                        array( //1: undo previous revision
                                'Berlin', //handle
                                array(
-                                       'undo' => -1,  // previous revision
+                                       'undo' => -1, // previous revision
                                ),
                                array( //expected
                                        'descriptions' => array(
@@ -726,8 +726,8 @@
                        array( //2: undo last and previous revision
                                'Berlin', //handle
                                array(
-                                       'undo' => 0,  // current revision
-                                       'undoafter' => -2,  // first revision
+                                       'undo' => 0, // current revision
+                                       'undoafter' => -2, // first revision
                                ),
                                array( //expected
                                        'descriptions' => array(
@@ -739,7 +739,7 @@
                        array( //3: undoafter first revision (conflict, no 
change)
                                'Berlin', //handle
                                array(
-                                       'undoafter' => -2,  // first revision
+                                       'undoafter' => -2, // first revision
                                ),
                                array( //expected
                                        'descriptions' => array(
@@ -751,7 +751,7 @@
                        array( //4: restore previous revision
                                'Berlin', //handle
                                array(
-                                       'restore' => -1,  // previous revision
+                                       'restore' => -1, // previous revision
                                ),
                                array( //expected
                                        'descriptions' => array(
@@ -764,7 +764,7 @@
                        array( //5: restore first revision
                                'Berlin', //handle
                                array(
-                                       'restore' => -2,  // first revision
+                                       'restore' => -2, // first revision
                                ),
                                array( //expected
                                        'descriptions' => array(
@@ -797,7 +797,7 @@
 
                $out = $this->callAction( 'submit', $page, $params, true );
 
-               $this->assertRegExp( '![:/=]Q\d+$!', $out->getRedirect(), 
"successful operation should return a redirect" );
+               $this->assertRegExp( '![:/=]Q\d+$!', $out->getRedirect(), 
'successful operation should return a redirect' );
 
                $item = $this->loadTestItem( $handle );
 
@@ -852,7 +852,7 @@
         * @dataProvider provideUndoPermissions
         */
        public function testUndoPermissions( $action, $permissions, $error ) {
-               $handle = "London";
+               $handle = 'London';
 
                self::resetTestItem( $handle );
 
@@ -871,9 +871,9 @@
                if ( $error ) {
                        $this->assertRegExp( $error, $out->getHTML() );
 
-                       $this->assertEmpty( $out->getRedirect(), "operation 
should not trigger a redirect" );
+                       $this->assertEmpty( $out->getRedirect(), 'operation 
should not trigger a redirect' );
                } else {
-                       $this->assertRegExp( '![:/=]Q\d+$!', 
$out->getRedirect(), "successful operation should return a redirect" );
+                       $this->assertRegExp( '![:/=]Q\d+$!', 
$out->getRedirect(), 'successful operation should return a redirect' );
                }
 
                self::resetTestItem( $handle );
diff --git 
a/extensions/Wikibase/repo/tests/phpunit/includes/api/ApiErrorReporterTest.php 
b/extensions/Wikibase/repo/tests/phpunit/includes/api/ApiErrorReporterTest.php
index f884e34..fdbfd93 100644
--- 
a/extensions/Wikibase/repo/tests/phpunit/includes/api/ApiErrorReporterTest.php
+++ 
b/extensions/Wikibase/repo/tests/phpunit/includes/api/ApiErrorReporterTest.php
@@ -8,9 +8,9 @@
 use Status;
 use UsageException;
 use ValueParsers\ParseException;
-use Wikibase\Lib\Localizer\DispatchingExceptionLocalizer;
-use Wikibase\Lib\Localizer\ExceptionLocalizer;
-use Wikibase\Lib\Localizer\ParseExceptionLocalizer;
+use Wikibase\Repo\Localizer\DispatchingExceptionLocalizer;
+use Wikibase\Repo\Localizer\ExceptionLocalizer;
+use Wikibase\Repo\Localizer\ParseExceptionLocalizer;
 use Wikibase\Repo\Api\ApiErrorReporter;
 
 /**
diff --git 
a/extensions/Wikibase/repo/tests/phpunit/includes/api/ApiHelperFactoryTest.php 
b/extensions/Wikibase/repo/tests/phpunit/includes/api/ApiHelperFactoryTest.php
index 09e284f..13e5e0c 100644
--- 
a/extensions/Wikibase/repo/tests/phpunit/includes/api/ApiHelperFactoryTest.php
+++ 
b/extensions/Wikibase/repo/tests/phpunit/includes/api/ApiHelperFactoryTest.php
@@ -21,7 +21,7 @@
 
        private function newApiHelperFactory() {
                $titleLookup = $this->getMock( 
'Wikibase\Lib\Store\EntityTitleLookup' );
-               $exceptionLocalizer = $this->getMock( 
'Wikibase\Lib\Localizer\ExceptionLocalizer' );
+               $exceptionLocalizer = $this->getMock( 
'Wikibase\Repo\Localizer\ExceptionLocalizer' );
                $dataTypeLookup = $this->getMock( 
'Wikibase\DataModel\Services\Lookup\PropertyDataTypeLookup' );
                $entityFactory = 
WikibaseRepo::getDefaultInstance()->getEntityFactory();
                $summaryFormatter = $this->getMockBuilder( 
'Wikibase\SummaryFormatter' )
diff --git 
a/extensions/Wikibase/repo/tests/phpunit/includes/api/ParseValueTest.php 
b/extensions/Wikibase/repo/tests/phpunit/includes/api/ParseValueTest.php
index d48af07..46585d4 100644
--- a/extensions/Wikibase/repo/tests/phpunit/includes/api/ParseValueTest.php
+++ b/extensions/Wikibase/repo/tests/phpunit/includes/api/ParseValueTest.php
@@ -11,6 +11,8 @@
 use Wikibase\Repo\Api\ApiErrorReporter;
 use Wikibase\Repo\Api\ParseValue;
 use Wikibase\Repo\BuilderBasedDataTypeValidatorFactory;
+use Wikibase\Repo\Validators\DataFieldValidator;
+use Wikibase\Repo\Validators\DataValueValidator;
 use Wikibase\Repo\ValueParserFactory;
 use Wikibase\Repo\WikibaseRepo;
 use Wikibase\Repo\Validators\RegexValidator;
@@ -80,7 +82,10 @@
        }
 
        public function newArrayWithStringValidator() {
-               return array( new RegexValidator( '/INVALID/', true, 
'no-kittens' ) );
+               return array(
+                       new DataValueValidator(
+                               new RegexValidator( '/INVALID/', true, 
'no-kittens' )
+                       ) );
        }
 
        public function newStringDataType( $name ) {
diff --git 
a/extensions/Wikibase/repo/tests/phpunit/includes/api/StatementModificationHelperTest.php
 
b/extensions/Wikibase/repo/tests/phpunit/includes/api/StatementModificationHelperTest.php
index 98cd7a2..ce52f0e 100644
--- 
a/extensions/Wikibase/repo/tests/phpunit/includes/api/StatementModificationHelperTest.php
+++ 
b/extensions/Wikibase/repo/tests/phpunit/includes/api/StatementModificationHelperTest.php
@@ -9,7 +9,7 @@
 use Wikibase\DataModel\Entity\ItemId;
 use Wikibase\DataModel\Snak\PropertyValueSnak;
 use Wikibase\DataModel\Statement\Statement;
-use Wikibase\Lib\Localizer\DispatchingExceptionLocalizer;
+use Wikibase\Repo\Localizer\DispatchingExceptionLocalizer;
 use Wikibase\Repo\Api\ApiErrorReporter;
 use Wikibase\Repo\Api\CreateClaim;
 use Wikibase\Repo\Api\StatementModificationHelper;
diff --git 
a/extensions/Wikibase/repo/tests/phpunit/includes/specials/SpecialGoToLinkedPageTest.php
 
b/extensions/Wikibase/repo/tests/phpunit/includes/specials/SpecialGoToLinkedPageTest.php
index ca2972f..9f5b8cd 100644
--- 
a/extensions/Wikibase/repo/tests/phpunit/includes/specials/SpecialGoToLinkedPageTest.php
+++ 
b/extensions/Wikibase/repo/tests/phpunit/includes/specials/SpecialGoToLinkedPageTest.php
@@ -6,10 +6,11 @@
 use Site;
 use SiteStore;
 use Wikibase\DataModel\Entity\ItemId;
+use Wikibase\DataModel\Services\EntityId\EntityIdParser;
+use Wikibase\Lib\Store\EntityLookup;
 use Wikibase\Lib\Store\EntityRedirectLookup;
 use Wikibase\Lib\Store\SiteLinkLookup;
 use Wikibase\Repo\Specials\SpecialGoToLinkedPage;
-use Wikibase\DataModel\Entity\EntityIdParser;
 
 /**
  * @covers Wikibase\Repo\Specials\SpecialGoToLinkedPage
@@ -104,17 +105,13 @@
        private function getEntitylookup() {
                $mock = $this->getMock( 'Wikibase\Lib\Store\EntityLookup' );
                $mock->expects( $this->any() )
-               ->method( 'hasEntity' )
-               ->will( $this->returnCallback( function( ItemId $itemId ) {
-                       if ( $itemId->getSerialization() === 'Q23'
-                               || $itemId->getSerialization() === 'Q24') {
-                               return true;
-                       } else {
-                               return false;
-                       }
-               } ) );
+                       ->method( 'hasEntity' )
+                       ->will( $this->returnCallback( function( ItemId $itemId 
) {
+                               $id = $itemId->getSerialization();
+                               return $id === 'Q23' || $id === 'Q24';
+                       } ) );
 
-                       return $mock;
+               return $mock;
        }
 
        /**
diff --git 
a/extensions/Wikibase/repo/tests/phpunit/includes/specials/SpecialMergeItemsTest.php
 
b/extensions/Wikibase/repo/tests/phpunit/includes/specials/SpecialMergeItemsTest.php
index 4d287ad..3059d24 100644
--- 
a/extensions/Wikibase/repo/tests/phpunit/includes/specials/SpecialMergeItemsTest.php
+++ 
b/extensions/Wikibase/repo/tests/phpunit/includes/specials/SpecialMergeItemsTest.php
@@ -107,7 +107,7 @@
                        MockSiteStore::newFromTestSites()
                );
 
-               $exceptionLocalizer = $this->getMock( 
'Wikibase\Lib\Localizer\ExceptionLocalizer' );
+               $exceptionLocalizer = $this->getMock( 
'Wikibase\Repo\Localizer\ExceptionLocalizer' );
                $exceptionLocalizer->expects( $this->any() )
                        ->method( 'getExceptionMessage' )
                        ->will( $this->returnCallback( function( Exception $ex 
) {
diff --git 
a/extensions/Wikibase/repo/tests/phpunit/includes/specials/SpecialRedirectEntityTest.php
 
b/extensions/Wikibase/repo/tests/phpunit/includes/specials/SpecialRedirectEntityTest.php
index 195aced..330a610 100644
--- 
a/extensions/Wikibase/repo/tests/phpunit/includes/specials/SpecialRedirectEntityTest.php
+++ 
b/extensions/Wikibase/repo/tests/phpunit/includes/specials/SpecialRedirectEntityTest.php
@@ -87,7 +87,7 @@
                $idParser = 
WikibaseRepo::getDefaultInstance()->getEntityIdParser();
                $summaryFormatter = 
WikibaseRepo::getDefaultInstance()->getSummaryFormatter();
 
-               $exceptionLocalizer = $this->getMock( 
'Wikibase\Lib\Localizer\ExceptionLocalizer' );
+               $exceptionLocalizer = $this->getMock( 
'Wikibase\Repo\Localizer\ExceptionLocalizer' );
                $exceptionLocalizer->expects( $this->any() )
                        ->method( 'getExceptionMessage' )
                        ->will( $this->returnCallback( function( Exception $ex 
) {
diff --git a/extensions/Wikibase/view/tests/phpunit/ClaimHtmlGeneratorTest.php 
b/extensions/Wikibase/view/tests/phpunit/ClaimHtmlGeneratorTest.php
index 10a6804..bf7f8d9 100644
--- a/extensions/Wikibase/view/tests/phpunit/ClaimHtmlGeneratorTest.php
+++ b/extensions/Wikibase/view/tests/phpunit/ClaimHtmlGeneratorTest.php
@@ -84,7 +84,7 @@
 
                $html = $claimHtmlGenerator->getHtmlForClaim( $claim, 'edit' );
 
-               foreach( $patterns as $message => $pattern ) {
+               foreach ( $patterns as $message => $pattern ) {
                        $this->assertRegExp( $pattern, $html, $message );
                }
        }
diff --git 
a/extensions/Wikibase/view/tests/phpunit/EntityViewPlaceholderExpanderTest.php 
b/extensions/Wikibase/view/tests/phpunit/EntityViewPlaceholderExpanderTest.php
index 91609e6..68f30d2 100644
--- 
a/extensions/Wikibase/view/tests/phpunit/EntityViewPlaceholderExpanderTest.php
+++ 
b/extensions/Wikibase/view/tests/phpunit/EntityViewPlaceholderExpanderTest.php
@@ -41,7 +41,7 @@
        private function newExpander( User $user, EntityRevisionLookup 
$entityRevisionLookup, ItemId $itemId ) {
                $templateFactory = TemplateFactory::getDefaultInstance();
 
-               $title = $this->getMockBuilder( 'Title')
+               $title = $this->getMockBuilder( 'Title' )
                        ->disableOriginalConstructor()
                        ->getMock();
 
diff --git a/extensions/Wikibase/view/tests/phpunit/SnakHtmlGeneratorTest.php 
b/extensions/Wikibase/view/tests/phpunit/SnakHtmlGeneratorTest.php
index 2289b55..5138892 100644
--- a/extensions/Wikibase/view/tests/phpunit/SnakHtmlGeneratorTest.php
+++ b/extensions/Wikibase/view/tests/phpunit/SnakHtmlGeneratorTest.php
@@ -47,7 +47,7 @@
 
                $html = $snakHtmlGenerator->getSnakHtml( $snak );
 
-               foreach( $patterns as $message => $pattern ) {
+               foreach ( $patterns as $message => $pattern ) {
                        $this->assertRegExp( $pattern, $html, $message );
                }
        }
diff --git a/vendor/composer/autoload_classmap.php 
b/vendor/composer/autoload_classmap.php
index 98c07aa..b25e1ed 100644
--- a/vendor/composer/autoload_classmap.php
+++ b/vendor/composer/autoload_classmap.php
@@ -640,11 +640,6 @@
     'Wikibase\\Lib\\HtmlTimeFormatter' => $baseDir . 
'/extensions/Wikibase/lib/includes/formatters/HtmlTimeFormatter.php',
     'Wikibase\\Lib\\HtmlUrlFormatter' => $baseDir . 
'/extensions/Wikibase/lib/includes/formatters/HtmlUrlFormatter.php',
     'Wikibase\\Lib\\LanguageNameLookup' => $baseDir . 
'/extensions/Wikibase/lib/includes/LanguageNameLookup.php',
-    'Wikibase\\Lib\\Localizer\\DispatchingExceptionLocalizer' => $baseDir . 
'/extensions/Wikibase/lib/includes/Localizer/DispatchingExceptionLocalizer.php',
-    'Wikibase\\Lib\\Localizer\\ExceptionLocalizer' => $baseDir . 
'/extensions/Wikibase/lib/includes/Localizer/ExceptionLocalizer.php',
-    'Wikibase\\Lib\\Localizer\\GenericExceptionLocalizer' => $baseDir . 
'/extensions/Wikibase/lib/includes/Localizer/GenericExceptionLocalizer.php',
-    'Wikibase\\Lib\\Localizer\\MessageExceptionLocalizer' => $baseDir . 
'/extensions/Wikibase/lib/includes/Localizer/MessageExceptionLocalizer.php',
-    'Wikibase\\Lib\\Localizer\\ParseExceptionLocalizer' => $baseDir . 
'/extensions/Wikibase/lib/includes/Localizer/ParseExceptionLocalizer.php',
     'Wikibase\\Lib\\MediaWikiNumberLocalizer' => $baseDir . 
'/extensions/Wikibase/lib/includes/formatters/MediaWikiNumberLocalizer.php',
     'Wikibase\\Lib\\MediaWikiNumberUnlocalizer' => $baseDir . 
'/extensions/Wikibase/lib/includes/parsers/MediaWikiNumberUnlocalizer.php',
     'Wikibase\\Lib\\MessageException' => $baseDir . 
'/extensions/Wikibase/lib/includes/MessageException.php',
@@ -888,7 +883,12 @@
     'Wikibase\\Repo\\LinkedData\\HttpAcceptNegotiator' => $baseDir . 
'/extensions/Wikibase/repo/includes/LinkedData/HttpAcceptNegotiator.php',
     'Wikibase\\Repo\\LinkedData\\HttpAcceptParser' => $baseDir . 
'/extensions/Wikibase/repo/includes/LinkedData/HttpAcceptParser.php',
     'Wikibase\\Repo\\Localizer\\ChangeOpValidationExceptionLocalizer' => 
$baseDir . 
'/extensions/Wikibase/repo/includes/Localizer/ChangeOpValidationExceptionLocalizer.php',
+    'Wikibase\\Repo\\Localizer\\DispatchingExceptionLocalizer' => $baseDir . 
'/extensions/Wikibase/repo/includes/Localizer/DispatchingExceptionLocalizer.php',
+    'Wikibase\\Repo\\Localizer\\ExceptionLocalizer' => $baseDir . 
'/extensions/Wikibase/repo/includes/Localizer/ExceptionLocalizer.php',
+    'Wikibase\\Repo\\Localizer\\GenericExceptionLocalizer' => $baseDir . 
'/extensions/Wikibase/repo/includes/Localizer/GenericExceptionLocalizer.php',
+    'Wikibase\\Repo\\Localizer\\MessageExceptionLocalizer' => $baseDir . 
'/extensions/Wikibase/repo/includes/Localizer/MessageExceptionLocalizer.php',
     'Wikibase\\Repo\\Localizer\\MessageParameterFormatter' => $baseDir . 
'/extensions/Wikibase/repo/includes/Localizer/MessageParameterFormatter.php',
+    'Wikibase\\Repo\\Localizer\\ParseExceptionLocalizer' => $baseDir . 
'/extensions/Wikibase/repo/includes/Localizer/ParseExceptionLocalizer.php',
     'Wikibase\\Repo\\Maintenance\\RebuildEntityPerPage' => $baseDir . 
'/extensions/Wikibase/repo/maintenance/rebuildEntityPerPage.php',
     'Wikibase\\Repo\\Maintenance\\RebuildItemsPerSite' => $baseDir . 
'/extensions/Wikibase/repo/maintenance/rebuildItemsPerSite.php',
     'Wikibase\\Repo\\Notifications\\ChangeNotificationSender' => $baseDir . 
'/extensions/Wikibase/repo/includes/Notifications/ChangeNotificationSender.php',
@@ -1064,7 +1064,7 @@
     'Wikibase\\Test\\DiffOpValueFormatterTest' => $baseDir . 
'/extensions/Wikibase/repo/tests/phpunit/includes/Diff/DiffOpValueFormatterTest.php',
     'Wikibase\\Test\\DiffViewTest' => $baseDir . 
'/extensions/Wikibase/repo/tests/phpunit/includes/Diff/DiffViewTest.php',
     'Wikibase\\Test\\DifferencesSnakVisualizerTest' => $baseDir . 
'/extensions/Wikibase/repo/tests/phpunit/includes/Diff/DifferencesSnakVisualizerTest.php',
-    'Wikibase\\Test\\DispatchingExceptionLocalizerTest' => $baseDir . 
'/extensions/Wikibase/lib/tests/phpunit/Localizer/DispatchingExceptionLocalizerTest.php',
+    'Wikibase\\Test\\DispatchingExceptionLocalizerTest' => $baseDir . 
'/extensions/Wikibase/repo/tests/phpunit/includes/Localizer/DispatchingExceptionLocalizerTest.php',
     'Wikibase\\Test\\DualSubscriptionLookupTest' => $baseDir . 
'/extensions/Wikibase/repo/tests/phpunit/includes/store/DualSubscriptionLookupTest.php',
     'Wikibase\\Test\\DumpJsonTest' => $baseDir . 
'/extensions/Wikibase/repo/tests/phpunit/maintenance/dumpJsonTest.php',
     'Wikibase\\Test\\Dumpers\\JsonDumpGeneratorTest' => $baseDir . 
'/extensions/Wikibase/repo/tests/phpunit/includes/Dumpers/JsonDumpGeneratorTest.php',
@@ -1104,7 +1104,7 @@
     'Wikibase\\Test\\EntityTermLookupTest' => $baseDir . 
'/extensions/Wikibase/lib/tests/phpunit/store/EntityTermLookupTest.php',
     'Wikibase\\Test\\FingerprintChangeOpFactoryTest' => $baseDir . 
'/extensions/Wikibase/repo/tests/phpunit/includes/ChangeOp/FingerprintChangeOpFactoryTest.php',
     'Wikibase\\Test\\FingerprintSearchTextGeneratorTest' => $baseDir . 
'/extensions/Wikibase/repo/tests/phpunit/includes/FingerprintSearchTextGeneratorTest.php',
-    'Wikibase\\Test\\GenericExceptionLocalizerTest' => $baseDir . 
'/extensions/Wikibase/lib/tests/phpunit/Localizer/GenericExceptionLocalizerTest.php',
+    'Wikibase\\Test\\GenericExceptionLocalizerTest' => $baseDir . 
'/extensions/Wikibase/repo/tests/phpunit/includes/Localizer/GenericExceptionLocalizerTest.php',
     'Wikibase\\Test\\HttpAcceptNegotiatorTest' => $baseDir . 
'/extensions/Wikibase/repo/tests/phpunit/includes/LinkedData/HttpAcceptNegotiatorTest.php',
     'Wikibase\\Test\\HttpAcceptParserTest' => $baseDir . 
'/extensions/Wikibase/repo/tests/phpunit/includes/LinkedData/HttpAcceptParserTest.php',
     'Wikibase\\Test\\IO\\EntityIdReaderTest' => $baseDir . 
'/extensions/Wikibase/repo/tests/phpunit/includes/IO/EntityIdReaderTest.php',
@@ -1132,7 +1132,7 @@
     'Wikibase\\Test\\LanguageWithConversionTest' => $baseDir . 
'/extensions/Wikibase/lib/tests/phpunit/LanguageWithConversionTest.php',
     'Wikibase\\Test\\Lib\\Serialization\\SerializationModifierTest' => 
$baseDir . 
'/extensions/Wikibase/lib/tests/phpunit/includes/serialization/SerializationModifierTest.php',
     'Wikibase\\Test\\MergeChangeOpsFactoryTest' => $baseDir . 
'/extensions/Wikibase/repo/tests/phpunit/includes/ChangeOp/MergeChangeOpsFactoryTest.php',
-    'Wikibase\\Test\\MessageExceptionLocalizerTest' => $baseDir . 
'/extensions/Wikibase/lib/tests/phpunit/Localizer/MessageExceptionLocalizerTest.php',
+    'Wikibase\\Test\\MessageExceptionLocalizerTest' => $baseDir . 
'/extensions/Wikibase/repo/tests/phpunit/includes/Localizer/MessageExceptionLocalizerTest.php',
     'Wikibase\\Test\\MessageParameterFormatterTest' => $baseDir . 
'/extensions/Wikibase/repo/tests/phpunit/includes/Localizer/MessageParameterFormatterTest.php',
     'Wikibase\\Test\\MockChunkAccess' => $baseDir . 
'/extensions/Wikibase/lib/tests/phpunit/store/MockChunkAccess.php',
     'Wikibase\\Test\\MockClientStore' => $baseDir . 
'/extensions/Wikibase/client/tests/phpunit/MockClientStore.php',
@@ -1147,7 +1147,7 @@
     'Wikibase\\Test\\OutputPageJsConfigBuilderTest' => $baseDir . 
'/extensions/Wikibase/repo/tests/phpunit/includes/OutputPageJsConfigBuilderTest.php',
     'Wikibase\\Test\\PagePropsEntityIdLookupTest' => $baseDir . 
'/extensions/Wikibase/client/tests/phpunit/includes/store/sql/PagePropsEntityIdLookupTest.php',
     'Wikibase\\Test\\PageTermsTest' => $baseDir . 
'/extensions/Wikibase/client/tests/phpunit/includes/api/PageTermsTest.php',
-    'Wikibase\\Test\\ParseExceptionLocalizerTest' => $baseDir . 
'/extensions/Wikibase/lib/tests/phpunit/Localizer/ParseExceptionLocalizerTest.php',
+    'Wikibase\\Test\\ParseExceptionLocalizerTest' => $baseDir . 
'/extensions/Wikibase/repo/tests/phpunit/includes/Localizer/ParseExceptionLocalizerTest.php',
     'Wikibase\\Test\\ParserOutputJsConfigBuilderTest' => $baseDir . 
'/extensions/Wikibase/repo/tests/phpunit/includes/ParserOutputJsConfigBuilderTest.php',
     'Wikibase\\Test\\PermissionsHelper' => $baseDir . 
'/extensions/Wikibase/repo/tests/phpunit/includes/PermissionsHelper.php',
     'Wikibase\\Test\\PlainEntityIdFormatterTest' => $baseDir . 
'/extensions/Wikibase/lib/tests/phpunit/formatters/PlainEntityIdFormatterTest.php',
diff --git a/vendor/composer/installed.json b/vendor/composer/installed.json
index c3686b2..d8fbd3c 100644
--- a/vendor/composer/installed.json
+++ b/vendor/composer/installed.json
@@ -1218,12 +1218,12 @@
         "source": {
             "type": "git",
             "url": 
"https://github.com/wikimedia/mediawiki-extensions-Wikibase.git";,
-            "reference": "872b06357b0c05017b091246c71db44e194ee88f"
+            "reference": "8fc76a7a6b4c5ca43622af7731d430094c934a37"
         },
         "dist": {
             "type": "zip",
-            "url": 
"https://api.github.com/repos/wikimedia/mediawiki-extensions-Wikibase/zipball/872b06357b0c05017b091246c71db44e194ee88f";,
-            "reference": "872b06357b0c05017b091246c71db44e194ee88f",
+            "url": 
"https://api.github.com/repos/wikimedia/mediawiki-extensions-Wikibase/zipball/8fc76a7a6b4c5ca43622af7731d430094c934a37";,
+            "reference": "8fc76a7a6b4c5ca43622af7731d430094c934a37",
             "shasum": ""
         },
         "require": {
@@ -1254,7 +1254,7 @@
         "require-dev": {
             "squizlabs/php_codesniffer": "~2.1"
         },
-        "time": "2015-08-07 09:37:35",
+        "time": "2015-08-07 15:21:21",
         "type": "mediawiki-extension",
         "installation-source": "dist",
         "autoload": {

-- 
To view, visit https://gerrit.wikimedia.org/r/230156
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings

Gerrit-MessageType: newchange
Gerrit-Change-Id: I8f9accd789932dd9838292f81113411702c58815
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

Reply via email to