]> source.dussan.org Git - nextcloud-server.git/commitdiff
Fix some more problems with tests under PHP 8.2
authorCôme Chilliet <come.chilliet@nextcloud.com>
Tue, 15 Nov 2022 15:02:24 +0000 (16:02 +0100)
committerCôme Chilliet <come.chilliet@nextcloud.com>
Tue, 15 Nov 2022 15:02:24 +0000 (16:02 +0100)
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
apps/settings/tests/Controller/CheckSetupControllerTest.php
apps/settings/tests/Settings/Admin/SharingTest.php
apps/theming/tests/Themes/DefaultThemeTest.php
apps/theming/tests/ThemingDefaultsTest.php
tests/lib/AppFramework/Http/RequestStream.php

index c109bad04ff04b40a39d28649aec84b1ce936b41..81aa7af0b21c53a0f47365956d55a68a0daa7012 100644 (file)
@@ -431,7 +431,7 @@ class CheckSetupControllerTest extends TestCase {
                        ->method('getAppValue')
                        ->willReturnMap([
                                ['files_external', 'user_certificate_scan', '', '["a", "b"]'],
-                               ['core', 'cronErrors', ''],
+                               ['core', 'cronErrors', '', ''],
                        ]);
                $this->config->expects($this->any())
                        ->method('getSystemValue')
@@ -653,7 +653,7 @@ class CheckSetupControllerTest extends TestCase {
                                'OCA\Settings\SetupChecks\SupportedDatabase' => ['pass' => true, 'description' => '', 'severity' => 'info'],
                                'isFairUseOfFreePushService' => false,
                                'temporaryDirectoryWritable' => false,
-                               \OCA\Settings\SetupChecks\LdapInvalidUuids::class => ['pass' => true, 'description' =>  'Invalid UUIDs of LDAP users or groups have been found. Please review your "Override UUID detection" settings in the Expert part of the LDAP configuration and use "occ ldap:update-uuid" to update them.', 'severity' => 'warning'],
+                               \OCA\Settings\SetupChecks\LdapInvalidUuids::class => ['pass' => true, 'description' => 'Invalid UUIDs of LDAP users or groups have been found. Please review your "Override UUID detection" settings in the Expert part of the LDAP configuration and use "occ ldap:update-uuid" to update them.', 'severity' => 'warning'],
                        ]
                );
                $this->assertEquals($expected, $this->checkSetupController->check());
@@ -977,11 +977,11 @@ class CheckSetupControllerTest extends TestCase {
                        ->willReturn([]);
 
                $expected = new DataDisplayResponse(
-                               'No errors have been found.',
-                               Http::STATUS_OK,
-                               [
-                                       'Content-Type' => 'text/plain',
-                               ]
+                       'No errors have been found.',
+                       Http::STATUS_OK,
+                       [
+                               'Content-Type' => 'text/plain',
+                       ]
                );
                $this->assertEquals($expected, $this->checkSetupController->getFailedIntegrityCheckFiles());
        }
@@ -997,7 +997,7 @@ class CheckSetupControllerTest extends TestCase {
                                ->willReturn([ 'core' => [ 'EXTRA_FILE' => ['/testfile' => []], 'INVALID_HASH' => [ '/.idea/workspace.xml' => [ 'expected' => 'f1c5e2630d784bc9cb02d5a28f55d6f24d06dae2a0fee685f3c2521b050955d9d452769f61454c9ddfa9c308146ade10546cfa829794448eaffbc9a04a29d216', 'current' => 'ce08bf30bcbb879a18b49239a9bec6b8702f52452f88a9d32142cad8d2494d5735e6bfa0d8642b2762c62ca5be49f9bf4ec231d4a230559d4f3e2c471d3ea094', ], '/lib/private/integritycheck/checker.php' => [ 'expected' => 'c5a03bacae8dedf8b239997901ba1fffd2fe51271d13a00cc4b34b09cca5176397a89fc27381cbb1f72855fa18b69b6f87d7d5685c3b45aee373b09be54742ea', 'current' => '88a3a92c11db91dec1ac3be0e1c87f862c95ba6ffaaaa3f2c3b8f682187c66f07af3a3b557a868342ef4a271218fe1c1e300c478e6c156c5955ed53c40d06585', ], '/settings/controller/checksetupcontroller.php' => [ 'expected' => '3e1de26ce93c7bfe0ede7c19cb6c93cadc010340225b375607a7178812e9de163179b0dc33809f451e01f491d93f6f5aaca7929685d21594cccf8bda732327c4', 'current' => '09563164f9904a837f9ca0b5f626db56c838e5098e0ccc1d8b935f68fa03a25c5ec6f6b2d9e44a868e8b85764dafd1605522b4af8db0ae269d73432e9a01e63a', ], ], ], 'bookmarks' => [ 'EXCEPTION' => [ 'class' => 'OC\\IntegrityCheck\\Exceptions\\InvalidSignatureException', 'message' => 'Signature data not found.', ], ], 'dav' => [ 'EXCEPTION' => [ 'class' => 'OC\\IntegrityCheck\\Exceptions\\InvalidSignatureException', 'message' => 'Signature data not found.', ], ], 'encryption' => [ 'EXCEPTION' => [ 'class' => 'OC\\IntegrityCheck\\Exceptions\\InvalidSignatureException', 'message' => 'Signature data not found.', ], ], 'external' => [ 'EXCEPTION' => [ 'class' => 'OC\\IntegrityCheck\\Exceptions\\InvalidSignatureException', 'message' => 'Signature data not found.', ], ], 'federation' => [ 'EXCEPTION' => [ 'class' => 'OC\\IntegrityCheck\\Exceptions\\InvalidSignatureException', 'message' => 'Signature data not found.', ], ], 'files' => [ 'EXCEPTION' => [ 'class' => 'OC\\IntegrityCheck\\Exceptions\\InvalidSignatureException', 'message' => 'Signature data not found.', ], ], 'files_antivirus' => [ 'EXCEPTION' => [ 'class' => 'OC\\IntegrityCheck\\Exceptions\\InvalidSignatureException', 'message' => 'Signature data not found.', ], ], 'files_drop' => [ 'EXCEPTION' => [ 'class' => 'OC\\IntegrityCheck\\Exceptions\\InvalidSignatureException', 'message' => 'Signature data not found.', ], ], 'files_external' => [ 'EXCEPTION' => [ 'class' => 'OC\\IntegrityCheck\\Exceptions\\InvalidSignatureException', 'message' => 'Signature data not found.', ], ], 'files_pdfviewer' => [ 'EXCEPTION' => [ 'class' => 'OC\\IntegrityCheck\\Exceptions\\InvalidSignatureException', 'message' => 'Signature data not found.', ], ], 'files_sharing' => [ 'EXCEPTION' => [ 'class' => 'OC\\IntegrityCheck\\Exceptions\\InvalidSignatureException', 'message' => 'Signature data not found.', ], ], 'files_trashbin' => [ 'EXCEPTION' => [ 'class' => 'OC\\IntegrityCheck\\Exceptions\\InvalidSignatureException', 'message' => 'Signature data not found.', ], ], 'files_versions' => [ 'EXCEPTION' => [ 'class' => 'OC\\IntegrityCheck\\Exceptions\\InvalidSignatureException', 'message' => 'Signature data not found.', ], ], 'files_videoviewer' => [ 'EXCEPTION' => [ 'class' => 'OC\\IntegrityCheck\\Exceptions\\InvalidSignatureException', 'message' => 'Signature data not found.', ], ], 'firstrunwizard' => [ 'EXCEPTION' => [ 'class' => 'OC\\IntegrityCheck\\Exceptions\\InvalidSignatureException', 'message' => 'Signature data not found.', ], ], 'gitsmart' => [ 'EXCEPTION' => [ 'class' => 'OC\\IntegrityCheck\\Exceptions\\InvalidSignatureException', 'message' => 'Signature data not found.', ], ], 'logreader' => [ 'EXCEPTION' => [ 'class' => 'OC\\IntegrityCheck\\Exceptions\\InvalidSignatureException', 'message' => 'Signature could not get verified.', ], ], 'password_policy' => [ 'EXCEPTION' => [ 'class' => 'OC\\IntegrityCheck\\Exceptions\\InvalidSignatureException', 'message' => 'Signature data not found.', ], ], 'provisioning_api' => [ 'EXCEPTION' => [ 'class' => 'OC\\IntegrityCheck\\Exceptions\\InvalidSignatureException', 'message' => 'Signature data not found.', ], ], 'sketch' => [ 'EXCEPTION' => [ 'class' => 'OC\\IntegrityCheck\\Exceptions\\InvalidSignatureException', 'message' => 'Signature data not found.', ], ], 'threatblock' => [ 'EXCEPTION' => [ 'class' => 'OC\\IntegrityCheck\\Exceptions\\InvalidSignatureException', 'message' => 'Signature data not found.', ], ], 'two_factor_auth' => [ 'EXCEPTION' => [ 'class' => 'OC\\IntegrityCheck\\Exceptions\\InvalidSignatureException', 'message' => 'Signature data not found.', ], ], 'user_ldap' => [ 'EXCEPTION' => [ 'class' => 'OC\\IntegrityCheck\\Exceptions\\InvalidSignatureException', 'message' => 'Signature data not found.', ], ], 'user_shibboleth' => [ 'EXCEPTION' => [ 'class' => 'OC\\IntegrityCheck\\Exceptions\\InvalidSignatureException', 'message' => 'Signature data not found.', ], ], ]);
 
                $expected = new DataDisplayResponse(
-                               'Technical information
+                       'Technical information
 =====================
 The following list covers which files have failed the integrity check. Please read
 the previous linked documentation to learn more about the errors and how to fix
@@ -1389,10 +1389,10 @@ Array
 
 )
 ',
-                               Http::STATUS_OK,
-                               [
-                                       'Content-Type' => 'text/plain',
-                               ]
+                       Http::STATUS_OK,
+                       [
+                               'Content-Type' => 'text/plain',
+                       ]
                );
                $this->assertEquals($expected, $this->checkSetupController->getFailedIntegrityCheckFiles());
        }
index b238e888d3901bcbe98ded84969014d008f9920a..2468ad97d1ea9f91e64e2c9cf6ac8dda810823ef 100644 (file)
@@ -100,6 +100,7 @@ class SharingTest extends TestCase {
                                ['core', 'shareapi_default_remote_expire_date', 'no', 'no'],
                                ['core', 'shareapi_remote_expire_after_n_days', '7', '7'],
                                ['core', 'shareapi_enforce_remote_expire_date', 'no', 'no'],
+                               ['core', 'shareapi_enforce_links_password_excluded_groups', '', ''],
                        ]);
                $this->shareManager->method('shareWithGroupMembersOnly')
                        ->willReturn(false);
@@ -181,6 +182,7 @@ class SharingTest extends TestCase {
                                ['core', 'shareapi_default_remote_expire_date', 'no', 'no'],
                                ['core', 'shareapi_remote_expire_after_n_days', '7', '7'],
                                ['core', 'shareapi_enforce_remote_expire_date', 'no', 'no'],
+                               ['core', 'shareapi_enforce_links_password_excluded_groups', '', ''],
                        ]);
                $this->shareManager->method('shareWithGroupMembersOnly')
                        ->willReturn(false);
index eb9f41d378fa7b95ee833fdc81ad7acc550463f3..73e5b14683a69752ed470472d51e447caacd6fc2 100644 (file)
@@ -22,7 +22,6 @@
  */
 namespace OCA\Theming\Tests\Service;
 
-use OC\App\AppManager;
 use OCA\Theming\ImageManager;
 use OCA\Theming\ITheme;
 use OCA\Theming\Themes\DefaultTheme;
@@ -37,10 +36,11 @@ use OCP\IUserSession;
 use PHPUnit\Framework\MockObject\MockObject;
 use Test\TestCase;
 
-
 class DefaultThemeTest extends TestCase {
        /** @var ThemingDefaults|MockObject */
        private $themingDefaults;
+       /** @var IUserSession|MockObject */
+       private $userSession;
        /** @var IURLGenerator|MockObject */
        private $urlGenerator;
        /** @var ImageManager|MockObject */
index d89406701376b0354b8b77c21a150d5378ebc0f8..c09c7b5f6495e74e9c2c7872ddb42e9d822b2388 100644 (file)
@@ -460,6 +460,11 @@ class ThemingDefaultsTest extends TestCase {
                $user->expects($this->any())
                        ->method('getUID')
                        ->willReturn('user');
+               $this->config
+                       ->expects($this->at(1))
+                       ->method('getAppValue')
+                       ->with('theming', 'color')
+                       ->willReturn('');
 
                $this->assertEquals(BackgroundService::DEFAULT_COLOR, $this->template->getColorPrimary());
        }
@@ -480,6 +485,11 @@ class ThemingDefaultsTest extends TestCase {
                        ->method('getUserValue')
                        ->with('user', 'theming', 'background', '')
                        ->willReturn(array_keys(BackgroundService::SHIPPED_BACKGROUNDS)[$backgroundIndex]);
+               $this->config
+                       ->expects($this->at(1))
+                       ->method('getAppValue')
+                       ->with('theming', 'color')
+                       ->willReturn('');
 
                $this->assertEquals($background['primary_color'], $this->template->getColorPrimary());
        }
@@ -498,6 +508,11 @@ class ThemingDefaultsTest extends TestCase {
                        ->method('getUserValue')
                        ->with('user', 'theming', 'background', '')
                        ->willReturn('#fff');
+               $this->config
+                       ->expects($this->at(1))
+                       ->method('getAppValue')
+                       ->with('theming', 'color')
+                       ->willReturn('');
 
                $this->assertEquals('#fff', $this->template->getColorPrimary());
        }
@@ -516,6 +531,11 @@ class ThemingDefaultsTest extends TestCase {
                        ->method('getUserValue')
                        ->with('user', 'theming', 'background', '')
                        ->willReturn('nextcloud');
+               $this->config
+                       ->expects($this->at(1))
+                       ->method('getAppValue')
+                       ->with('theming', 'color')
+                       ->willReturn('');
 
                $this->assertEquals($this->template->getDefaultColorPrimary(), $this->template->getColorPrimary());
        }
index 3868ed165055f0bd6f8d188eecf4182a3a435854..1a99685e3405dba448c337e5767774b2a9d672c5 100644 (file)
@@ -7,24 +7,26 @@ namespace Test\AppFramework\Http;
  * Used to simulate php://input for Request tests
  */
 class RequestStream {
-       protected $position;
-       protected $varname;
+       protected int $position = 0;
+       protected string $varname = '';
+       /* @var resource */
+       public $context;
 
-       public function stream_open($path, $mode, $options, &$opened_path) {
+       public function stream_open(string $path, string $mode, int $options, ?string &$opened_path): bool {
                $url = parse_url($path);
-               $this->varname = $url["host"];
+               $this->varname = $url["host"] ?? '';
                $this->position = 0;
 
                return true;
        }
 
-       public function stream_read($count) {
+       public function stream_read(int $count): string {
                $ret = substr($GLOBALS[$this->varname], $this->position, $count);
                $this->position += strlen($ret);
                return $ret;
        }
 
-       public function stream_write($data) {
+       public function stream_write(string $data): int {
                $left = substr($GLOBALS[$this->varname], 0, $this->position);
                $right = substr($GLOBALS[$this->varname], $this->position + strlen($data));
                $GLOBALS[$this->varname] = $left . $data . $right;
@@ -32,15 +34,15 @@ class RequestStream {
                return strlen($data);
        }
 
-       public function stream_tell() {
+       public function stream_tell(): int {
                return $this->position;
        }
 
-       public function stream_eof() {
+       public function stream_eof(): bool {
                return $this->position >= strlen($GLOBALS[$this->varname]);
        }
 
-       public function stream_seek($offset, $whence) {
+       public function stream_seek(int $offset, int $whence = SEEK_SET): bool {
                switch ($whence) {
                        case SEEK_SET:
                                if ($offset < strlen($GLOBALS[$this->varname]) && $offset >= 0) {
@@ -74,7 +76,7 @@ class RequestStream {
                }
        }
 
-       public function stream_stat() {
+       public function stream_stat(): array {
                $size = strlen($GLOBALS[$this->varname]);
                $time = time();
                $data = [
@@ -96,10 +98,10 @@ class RequestStream {
                //return false;
        }
 
-       public function stream_metadata($path, $option, $var) {
+       public function stream_metadata(string $path, int $option, $var): bool {
                if ($option == STREAM_META_TOUCH) {
                        $url = parse_url($path);
-                       $varname = $url["host"];
+                       $varname = $url["host"] ?? '';
                        if (!isset($GLOBALS[$varname])) {
                                $GLOBALS[$varname] = '';
                        }