API: Fix 'user_id' field of ApiCSPReport
authorTimo Tijhof <krinklemail@gmail.com>
Fri, 19 Jul 2019 21:34:34 +0000 (22:34 +0100)
committerTimo Tijhof <krinklemail@gmail.com>
Fri, 19 Jul 2019 21:58:39 +0000 (22:58 +0100)
Was accidentally turned into an always-true boolean in 5f343617,
due to confusion with JavaScript's default '||' operator.

Change-Id: I24071e22f8bb7a296ae138303f63acdb8ea4950a

includes/api/ApiCSPReport.php
tests/phpunit/includes/api/ApiCSPReportTest.php

index f53d2b9..be2da34 100644 (file)
@@ -54,7 +54,7 @@ class ApiCSPReport extends ApiBase {
                        // XXX Is it ok to put untrusted data into log??
                        'csp-report' => $report,
                        'method' => __METHOD__,
-                       'user_id' => $this->getUser()->getId() || 'logged-out',
+                       'user_id' => $this->getUser()->getId() ?: 'logged-out',
                        'user-agent' => $userAgent,
                        'source' => $this->getParameter( 'source' ),
                ] );
index dab9d3f..b3e0543 100644 (file)
@@ -39,8 +39,7 @@ class ApiCSPReportTest extends MediaWikiIntegrationTestCase {
                                                '<https://blocked.test> blocked from being loaded on <https://doc.test/path>:4',
                                        [
                                                'method' => 'ApiCSPReport::execute',
-                                               // FIXME
-                                               'user_id' => true,
+                                               'user_id' => 'logged-out',
                                                'user-agent' => 'Test/0.0',
                                                'source' => 'internal'
                                        ]