Aude has uploaded a new change for review.

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

Change subject: Update Wikidata - Adjust watchlist filter for changes in core
......................................................................

Update Wikidata - Adjust watchlist filter for changes in core

Bug: T118459
Change-Id: I1fb2cb0eb19ede6c66eae79aab3e78a922d62dd5
---
M composer.lock
M 
extensions/Wikibase/client/includes/Hooks/ChangesListSpecialPageFilterHandler.php
M 
extensions/Wikibase/client/tests/phpunit/includes/Hooks/ChangesListSpecialPageFilterHandlerTest.php
A vendor/composer/LICENSE
M vendor/composer/autoload_classmap.php
M vendor/composer/installed.json
6 files changed, 200 insertions(+), 113 deletions(-)


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

diff --git a/composer.lock b/composer.lock
index b5dbac7..c8d767e 100644
--- a/composer.lock
+++ b/composer.lock
@@ -1,10 +1,11 @@
 {
     "_readme": [
         "This file locks the dependencies of your project to a known state",
-        "Read more about it at 
http://getcomposer.org/doc/01-basic-usage.md#composer-lock-the-lock-file";,
+        "Read more about it at 
https://getcomposer.org/doc/01-basic-usage.md#composer-lock-the-lock-file";,
         "This file is @generated automatically"
     ],
     "hash": "cf6de7c43cfa96789a76010b9efb9624",
+    "content-hash": "a197493ae53db2fe47342c327ff12e88",
     "packages": [
         {
             "name": "composer/installers",
@@ -1392,12 +1393,12 @@
             "source": {
                 "type": "git",
                 "url": 
"https://github.com/wikimedia/mediawiki-extensions-Wikibase.git";,
-                "reference": "f8b52fab04969021e586fb406c588ac7bfa767a4"
+                "reference": "d34a715ca479898ea2de4391df66fc782da4da25"
             },
             "dist": {
                 "type": "zip",
-                "url": 
"https://api.github.com/repos/wikimedia/mediawiki-extensions-Wikibase/zipball/f8b52fab04969021e586fb406c588ac7bfa767a4";,
-                "reference": "f8b52fab04969021e586fb406c588ac7bfa767a4",
+                "url": 
"https://api.github.com/repos/wikimedia/mediawiki-extensions-Wikibase/zipball/d34a715ca479898ea2de4391df66fc782da4da25";,
+                "reference": "d34a715ca479898ea2de4391df66fc782da4da25",
                 "shasum": ""
             },
             "require": {
@@ -1467,7 +1468,7 @@
                 "wikibaserepo",
                 "wikidata"
             ],
-            "time": "2015-11-17 11:24:50"
+            "time": "2015-11-19 18:07:53"
         },
         {
             "name": "wikibase/wikimedia-badges",
@@ -1509,7 +1510,7 @@
             "support": {
                 "irc": "irc://irc.freenode.net/wikidata"
             },
-            "time": "2015-08-12 09:30:01"
+            "time": "2015-08-04 17:18:47"
         }
     ],
     "packages-dev": [],
diff --git 
a/extensions/Wikibase/client/includes/Hooks/ChangesListSpecialPageFilterHandler.php
 
b/extensions/Wikibase/client/includes/Hooks/ChangesListSpecialPageFilterHandler.php
index 0b0ecad..04bbc18 100644
--- 
a/extensions/Wikibase/client/includes/Hooks/ChangesListSpecialPageFilterHandler.php
+++ 
b/extensions/Wikibase/client/includes/Hooks/ChangesListSpecialPageFilterHandler.php
@@ -96,10 +96,12 @@
         */
        public function addFilterIfEnabled( array &$filters ) {
                if ( $this->shouldAddFilter() ) {
-                       // if preference enabled, then Wikibase edits are 
included by default and
-                       // the toggle default value needs to be the inverse to 
hide them, and vice versa.
-                       $toggleDefault = 
!$this->hasShowWikibaseEditsPrefEnabled();
-                       $this->addFilter( $filters, $toggleDefault );
+                       $filterName = $this->getFilterName();
+
+                       $filters[$filterName] = array(
+                               'msg' => 'wikibase-rc-hide-wikidata',
+                               'default' => $this->getToggleDefault()
+                       );
                }
        }
 
@@ -111,16 +113,16 @@
        }
 
        /**
-        * @param array &$filters
-        * @param bool $toggleDefault
+        * @return bool
         */
-       private function addFilter( array &$filters, $toggleDefault ) {
-               $filterName = $this->getFilterName();
+       private function getToggleDefault() {
+               if ( $this->request->getVal( 'action' ) === 'submit' ) {
+                       return $this->request->getBool( $this->getFilterName() 
);
+               }
 
-               $filters[$filterName] = array(
-                       'msg' => 'wikibase-rc-hide-wikidata',
-                       'default' => $toggleDefault
-               );
+               // if preference enabled, then Wikibase edits are included by 
default and
+               // the toggle default value needs to be the inverse to hide 
them, and vice versa.
+               return !$this->hasShowWikibaseEditsPrefEnabled();
        }
 
        /**
diff --git 
a/extensions/Wikibase/client/tests/phpunit/includes/Hooks/ChangesListSpecialPageFilterHandlerTest.php
 
b/extensions/Wikibase/client/tests/phpunit/includes/Hooks/ChangesListSpecialPageFilterHandlerTest.php
index eb18101..a5e9f2c 100644
--- 
a/extensions/Wikibase/client/tests/phpunit/includes/Hooks/ChangesListSpecialPageFilterHandlerTest.php
+++ 
b/extensions/Wikibase/client/tests/phpunit/includes/Hooks/ChangesListSpecialPageFilterHandlerTest.php
@@ -78,12 +78,13 @@
        }
 
        /**
-        * @dataProvider filterAddedWhenNotUsingEnhancedChangesProvider
+        * @dataProvider filter_withoutShowWikibaseEditsByDefaultPreference
         */
-       public function 
testFilterAddedWhenNotUsingEnhancedChanges_notShowWikibaseEditsByDefault(
+       public function testFilter_withoutShowWikibaseEditsByDefaultPreference(
                array $requestParams,
                array $userPreferences,
                $expectedFilterName,
+               $expectedToggleDefault,
                $specialPageName
        ) {
                $hookHandler = new ChangesListSpecialPageFilterHandler(
@@ -99,46 +100,72 @@
                $expected = array(
                        $expectedFilterName => array(
                                'msg' => 'wikibase-rc-hide-wikidata',
-                               'default' => true
+                               'default' => $expectedToggleDefault
                        )
                );
 
                $this->assertSame( $expected, $filters );
        }
 
-       public function filterAddedWhenNotUsingEnhancedChangesProvider() {
+       public function filter_withoutShowWikibaseEditsByDefaultPreference() {
                return array(
                        array(
                                array(),
                                array( 'usenewrc' => 0 ),
                                'hideWikibase',
+                               true,
                                'Watchlist'
                        ),
                        array(
                                array( 'enhanced' => 0 ),
                                array( 'usenewrc' => 1 ),
                                'hidewikidata',
+                               true,
                                'RecentChanges'
                        ),
                        array(
                                array(),
                                array( 'usenewrc' => 0 ),
                                'hidewikidata',
+                               true,
                                'RecentChangesLinked'
+                       ),
+                       array(
+                               array( 'action' => 'submit', 'hideWikibase' => 
0 ),
+                               array( 'usenewrc' => 0 ),
+                               'hideWikibase',
+                               false,
+                               'Watchlist'
+                       ),
+                       array(
+                               array( 'action' => 'submit', 'hideWikibase' => 
1 ),
+                               array( 'usenewrc' => 0 ),
+                               'hideWikibase',
+                               true,
+                               'Watchlist'
+                       ),
+                       array(
+                               array( 'action' => 'submit' ),
+                               array( 'usenewrc' => 0 ),
+                               'hideWikibase',
+                               false,
+                               'Watchlist'
                        )
                );
        }
 
        /**
-        * @dataProvider 
filterAddedInNonEnhanced_withPrefToShowWikibaseEditsByDefaultProvider
+        * @dataProvider filter_withShowWikibaseEditsByDefaultPreference
         */
-       public function 
testFilterAddedInNonEnhanced_withPrefToShowWikibaseEditsByDefault(
+       public function testFilter_withShowWikibaseEditsByDefaultPreference(
+               array $requestParams,
                array $userPreferences,
                $expectedFilterName,
+               $expectedToggleDefault,
                $specialPageName
        ) {
                $hookHandler = new ChangesListSpecialPageFilterHandler(
-                       $this->getRequest( array() ),
+                       $this->getRequest( $requestParams ),
                        $this->getUser( $userPreferences ),
                        $specialPageName,
                        true
@@ -150,24 +177,49 @@
                $expected = array(
                        $expectedFilterName => array(
                                'msg' => 'wikibase-rc-hide-wikidata',
-                               'default' => false
+                               'default' => $expectedToggleDefault
                        )
                );
 
                $this->assertSame( $expected, $filters );
        }
 
-       public function 
filterAddedInNonEnhanced_withPrefToShowWikibaseEditsByDefaultProvider() {
+       public function filter_withShowWikibaseEditsByDefaultPreference() {
                return array(
                        array(
+                               array(),
                                array( 'wlshowwikibase' => 1, 'usenewrc' => 0 ),
                                'hideWikibase',
+                               false,
                                'Watchlist'
                        ),
                        array(
+                               array( 'enhanced' => 0 ),
+                               array( 'rcshowwikidata' => 1, 'usenewrc' => 1 ),
+                               'hidewikidata',
+                               false,
+                               'RecentChanges'
+                       ),
+                       array(
+                               array(),
                                array( 'rcshowwikidata' => 1, 'usenewrc' => 0 ),
                                'hidewikidata',
-                               'RecentChanges'
+                               false,
+                               'RecentChangesLinked'
+                       ),
+                       array(
+                               array( 'action' => 'submit', 'hideWikibase' => 
0 ),
+                               array( 'wlshowwikibase' => 1, 'usenewrc' => 0 ),
+                               'hideWikibase',
+                               false,
+                               'Watchlist'
+                       ),
+                       array(
+                               array( 'action' => 'submit' ),
+                               array( 'wlshowwikibase' => 1, 'usenewrc' => 0 ),
+                               'hideWikibase',
+                               false,
+                               'Watchlist'
                        )
                );
        }
diff --git a/vendor/composer/LICENSE b/vendor/composer/LICENSE
new file mode 100644
index 0000000..c8d57af
--- /dev/null
+++ b/vendor/composer/LICENSE
@@ -0,0 +1,21 @@
+
+Copyright (c) 2015 Nils Adermann, Jordi Boggiano
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is furnished
+to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+THE SOFTWARE.
+
diff --git a/vendor/composer/autoload_classmap.php 
b/vendor/composer/autoload_classmap.php
index 744881f..35ce359 100644
--- a/vendor/composer/autoload_classmap.php
+++ b/vendor/composer/autoload_classmap.php
@@ -254,6 +254,10 @@
     'WikibaseQuality\\ConstraintReport\\ConstraintRepository' => $baseDir . 
'/extensions/Constraints/includes/ConstraintRepository.php',
     'WikibaseQuality\\ConstraintReport\\Maintenance\\UpdateConstraintsTable' 
=> $baseDir . '/extensions/Constraints/maintenance/UpdateConstraintsTable.php',
     'WikibaseQuality\\ConstraintReport\\Specials\\SpecialConstraintReport' => 
$baseDir . '/extensions/Constraints/specials/SpecialConstraintReport.php',
+    'WikibaseQuality\\ConstraintReport\\Tests\\ConstraintRepositoryTest' => 
$baseDir . '/extensions/Constraints/tests/phpunit/ConstraintRepositoryTest.php',
+    'WikibaseQuality\\ConstraintReport\\Tests\\ConstraintTest' => $baseDir . 
'/extensions/Constraints/tests/phpunit/ConstraintTest.php',
+    
'WikibaseQuality\\ConstraintReport\\Tests\\Maintenance\\UpdateConstraintsTableTest'
 => $baseDir . 
'/extensions/Constraints/tests/phpunit/Maintenance/UpdateConstraintsTableTest.php',
+    
'WikibaseQuality\\ConstraintReport\\Tests\\Specials\\SpecialConstraintReport\\SpecialConstraintReportTest'
 => $baseDir . 
'/extensions/Constraints/tests/phpunit/Specials/SpecialConstraintReportTest.php',
     'WikibaseQuality\\Html\\HtmlTableBuilder' => $baseDir . 
'/extensions/Quality/includes/Html/HtmlTableBuilder.php',
     'WikibaseQuality\\Html\\HtmlTableCellBuilder' => $baseDir . 
'/extensions/Quality/includes/Html/HtmlTableCellBuilder.php',
     'WikibaseQuality\\Html\\HtmlTableHeaderBuilder' => $baseDir . 
'/extensions/Quality/includes/Html/HtmlTableHeaderBuilder.php',
@@ -1399,7 +1403,14 @@
     'Wikimedia\\Purtle\\RdfWriter' => $baseDir . 
'/extensions/Wikibase/purtle/src/RdfWriter.php',
     'Wikimedia\\Purtle\\RdfWriterBase' => $baseDir . 
'/extensions/Wikibase/purtle/src/RdfWriterBase.php',
     'Wikimedia\\Purtle\\RdfWriterFactory' => $baseDir . 
'/extensions/Wikibase/purtle/src/RdfWriterFactory.php',
+    'Wikimedia\\Purtle\\Tests\\BNodeLabelerTest' => $baseDir . 
'/extensions/Wikibase/purtle/tests/phpunit/BNodeLabelerTest.php',
+    'Wikimedia\\Purtle\\Tests\\N3QuoterTest' => $baseDir . 
'/extensions/Wikibase/purtle/tests/phpunit/N3QuoterTest.php',
+    'Wikimedia\\Purtle\\Tests\\NTriplesRdfWriterTest' => $baseDir . 
'/extensions/Wikibase/purtle/tests/phpunit/NTriplesRdfWriterTest.php',
+    'Wikimedia\\Purtle\\Tests\\RdfWriterFactoryTest' => $baseDir . 
'/extensions/Wikibase/purtle/tests/phpunit/RdfWriterFactoryTest.php',
     'Wikimedia\\Purtle\\Tests\\RdfWriterTestBase' => $baseDir . 
'/extensions/Wikibase/purtle/tests/phpunit/RdfWriterTestBase.php',
+    'Wikimedia\\Purtle\\Tests\\TurtleRdfWriterTest' => $baseDir . 
'/extensions/Wikibase/purtle/tests/phpunit/TurtleRdfWriterTest.php',
+    'Wikimedia\\Purtle\\Tests\\UnicodeEscaperTest' => $baseDir . 
'/extensions/Wikibase/purtle/tests/phpunit/UnicodeEscaperTest.php',
+    'Wikimedia\\Purtle\\Tests\\XmlRdfWriterTest' => $baseDir . 
'/extensions/Wikibase/purtle/tests/phpunit/XmlRdfWriterTest.php',
     'Wikimedia\\Purtle\\TurtleRdfWriter' => $baseDir . 
'/extensions/Wikibase/purtle/src/TurtleRdfWriter.php',
     'Wikimedia\\Purtle\\UnicodeEscaper' => $baseDir . 
'/extensions/Wikibase/purtle/src/UnicodeEscaper.php',
     'Wikimedia\\Purtle\\XmlRdfWriter' => $baseDir . 
'/extensions/Wikibase/purtle/src/XmlRdfWriter.php',
diff --git a/vendor/composer/installed.json b/vendor/composer/installed.json
index 9cc3d00..d0f128b 100644
--- a/vendor/composer/installed.json
+++ b/vendor/composer/installed.json
@@ -1230,91 +1230,6 @@
         ]
     },
     {
-        "name": "wikibase/wikibase",
-        "version": "dev-wmf/1.27.0-wmf.7",
-        "version_normalized": "dev-wmf/1.27.0-wmf.7",
-        "source": {
-            "type": "git",
-            "url": 
"https://github.com/wikimedia/mediawiki-extensions-Wikibase.git";,
-            "reference": "f8b52fab04969021e586fb406c588ac7bfa767a4"
-        },
-        "dist": {
-            "type": "zip",
-            "url": 
"https://api.github.com/repos/wikimedia/mediawiki-extensions-Wikibase/zipball/f8b52fab04969021e586fb406c588ac7bfa767a4";,
-            "reference": "f8b52fab04969021e586fb406c588ac7bfa767a4",
-            "shasum": ""
-        },
-        "require": {
-            "data-values/common": "~0.3.0",
-            "data-values/data-types": "~0.5.0",
-            "data-values/data-values": "~1.0",
-            "data-values/geo": "~1.0",
-            "data-values/interfaces": "~0.2.0|~0.1.5",
-            "data-values/javascript": "~0.6.0|~0.7.0",
-            "data-values/number": "~0.6.0",
-            "data-values/serialization": "~1.0",
-            "data-values/time": "~0.8.2",
-            "data-values/validators": "~0.1.0",
-            "data-values/value-view": "~0.15.6",
-            "diff/diff": "~2.0",
-            "php": ">=5.3.2",
-            "wikibase/data-model": "~4.0",
-            "wikibase/data-model-javascript": "^1.0.2",
-            "wikibase/data-model-serialization": "~2.0",
-            "wikibase/data-model-services": "^3.0.0",
-            "wikibase/internal-serialization": "~2.0",
-            "wikibase/javascript-api": "~1.0",
-            "wikibase/serialization-javascript": "~2.0"
-        },
-        "conflict": {
-            "mediawiki/mediawiki": "<1.25"
-        },
-        "require-dev": {
-            "jakub-onderka/php-parallel-lint": "0.9",
-            "mediawiki/mediawiki-codesniffer": "0.4.0|0.5.0"
-        },
-        "time": "2015-11-17 11:24:50",
-        "type": "mediawiki-extension",
-        "installation-source": "dist",
-        "autoload": {
-            "classmap": [
-                "client/includes/",
-                "client/WikibaseClient.hooks.php",
-                "client/tests/phpunit/",
-                "lib/includes/",
-                "lib/WikibaseLib.hooks.php",
-                "lib/tests/phpunit/",
-                "repo/includes/",
-                "repo/maintenance/",
-                "repo/tests/phpunit/",
-                "repo/Wikibase.hooks.php"
-            ],
-            "psr-4": {
-                "Wikibase\\View\\": "view/src",
-                "Wikimedia\\Purtle\\": "purtle/src",
-                "Wikimedia\\Purtle\\Tests\\": "purtle/tests/phpunit"
-            }
-        },
-        "notification-url": "https://packagist.org/downloads/";,
-        "license": [
-            "GPL-2.0+"
-        ],
-        "authors": [
-            {
-                "name": "The Wikidata team"
-            }
-        ],
-        "description": "Structured data repository for MediaWiki",
-        "homepage": "http://wikiba.se";,
-        "keywords": [
-            "wikibase",
-            "wikibaseclient",
-            "wikibaselib",
-            "wikibaserepo",
-            "wikidata"
-        ]
-    },
-    {
         "name": "wikibase/wikimedia-badges",
         "version": "dev-master",
         "version_normalized": "9999999-dev",
@@ -1557,5 +1472,90 @@
         "support": {
             "issues": "https://phabricator.wikimedia.org/project/profile/1202/";
         }
+    },
+    {
+        "name": "wikibase/wikibase",
+        "version": "dev-wmf/1.27.0-wmf.7",
+        "version_normalized": "dev-wmf/1.27.0-wmf.7",
+        "source": {
+            "type": "git",
+            "url": 
"https://github.com/wikimedia/mediawiki-extensions-Wikibase.git";,
+            "reference": "d34a715ca479898ea2de4391df66fc782da4da25"
+        },
+        "dist": {
+            "type": "zip",
+            "url": 
"https://api.github.com/repos/wikimedia/mediawiki-extensions-Wikibase/zipball/d34a715ca479898ea2de4391df66fc782da4da25";,
+            "reference": "d34a715ca479898ea2de4391df66fc782da4da25",
+            "shasum": ""
+        },
+        "require": {
+            "data-values/common": "~0.3.0",
+            "data-values/data-types": "~0.5.0",
+            "data-values/data-values": "~1.0",
+            "data-values/geo": "~1.0",
+            "data-values/interfaces": "~0.2.0|~0.1.5",
+            "data-values/javascript": "~0.6.0|~0.7.0",
+            "data-values/number": "~0.6.0",
+            "data-values/serialization": "~1.0",
+            "data-values/time": "~0.8.2",
+            "data-values/validators": "~0.1.0",
+            "data-values/value-view": "~0.15.6",
+            "diff/diff": "~2.0",
+            "php": ">=5.3.2",
+            "wikibase/data-model": "~4.0",
+            "wikibase/data-model-javascript": "^1.0.2",
+            "wikibase/data-model-serialization": "~2.0",
+            "wikibase/data-model-services": "^3.0.0",
+            "wikibase/internal-serialization": "~2.0",
+            "wikibase/javascript-api": "~1.0",
+            "wikibase/serialization-javascript": "~2.0"
+        },
+        "conflict": {
+            "mediawiki/mediawiki": "<1.25"
+        },
+        "require-dev": {
+            "jakub-onderka/php-parallel-lint": "0.9",
+            "mediawiki/mediawiki-codesniffer": "0.4.0|0.5.0"
+        },
+        "time": "2015-11-19 18:07:53",
+        "type": "mediawiki-extension",
+        "installation-source": "dist",
+        "autoload": {
+            "classmap": [
+                "client/includes/",
+                "client/WikibaseClient.hooks.php",
+                "client/tests/phpunit/",
+                "lib/includes/",
+                "lib/WikibaseLib.hooks.php",
+                "lib/tests/phpunit/",
+                "repo/includes/",
+                "repo/maintenance/",
+                "repo/tests/phpunit/",
+                "repo/Wikibase.hooks.php"
+            ],
+            "psr-4": {
+                "Wikibase\\View\\": "view/src",
+                "Wikimedia\\Purtle\\": "purtle/src",
+                "Wikimedia\\Purtle\\Tests\\": "purtle/tests/phpunit"
+            }
+        },
+        "notification-url": "https://packagist.org/downloads/";,
+        "license": [
+            "GPL-2.0+"
+        ],
+        "authors": [
+            {
+                "name": "The Wikidata team"
+            }
+        ],
+        "description": "Structured data repository for MediaWiki",
+        "homepage": "http://wikiba.se";,
+        "keywords": [
+            "wikibase",
+            "wikibaseclient",
+            "wikibaselib",
+            "wikibaserepo",
+            "wikidata"
+        ]
     }
 ]

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

Gerrit-MessageType: newchange
Gerrit-Change-Id: I1fb2cb0eb19ede6c66eae79aab3e78a922d62dd5
Gerrit-PatchSet: 1
Gerrit-Project: mediawiki/extensions/Wikidata
Gerrit-Branch: wmf/1.27.0-wmf.7
Gerrit-Owner: Aude <aude.w...@gmail.com>

_______________________________________________
MediaWiki-commits mailing list
MediaWiki-commits@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits

Reply via email to