]> git.immae.eu Git - github/shaarli/Shaarli.git/blobdiff - tests/front/controller/visitor/FrontControllerMockHelper.php
Merge pull request #1539 from ArthurHoaro/feature/manual-root-url
[github/shaarli/Shaarli.git] / tests / front / controller / visitor / FrontControllerMockHelper.php
index d16b6949c21d3f5611399feff93bc8e78f74193f..6c53289bd01c83ba018003e2bf4dc32a27da1139 100644 (file)
@@ -42,7 +42,7 @@ trait FrontControllerMockHelper
         // Config
         $this->container->conf = $this->createMock(ConfigManager::class);
         $this->container->conf->method('get')->willReturnCallback(function (string $parameter, $default) {
-            return $default;
+            return $default === null ? $parameter : $default;
         });
 
         // PageBuilder
@@ -79,8 +79,12 @@ trait FrontControllerMockHelper
         $this->container->environment = [
             'SERVER_NAME' => 'shaarli',
             'SERVER_PORT' => '80',
-            'REQUEST_URI' => '/daily-rss',
+            'REQUEST_URI' => '/subfolder/daily-rss',
+            'REMOTE_ADDR' => '1.2.3.4',
+            'SCRIPT_NAME' => '/subfolder/index.php',
         ];
+
+        $this->container->basePath = '/subfolder';
     }
 
     /**
@@ -91,7 +95,6 @@ trait FrontControllerMockHelper
     protected function assignTemplateVars(array &$variables): void
     {
         $this->container->pageBuilder
-            ->expects(static::atLeastOnce())
             ->method('assign')
             ->willReturnCallback(function ($key, $value) use (&$variables) {
                 $variables[$key] = $value;
@@ -101,6 +104,14 @@ trait FrontControllerMockHelper
         ;
     }
 
+    protected static function generateString(int $length): string
+    {
+        // bin2hex(random_bytes) generates string twice as long as given parameter
+        $length = (int) ceil($length / 2);
+
+        return bin2hex(random_bytes($length));
+    }
+
     /**
      * Force to be used in PHPUnit context.
      */