diff options
author | Aleksander Machniak <alec@alec.pl> | 2021-11-13 12:02:24 +0300 |
---|---|---|
committer | Aleksander Machniak <alec@alec.pl> | 2021-11-13 12:02:24 +0300 |
commit | 28b635175090666f8d9f68a55ae11091ec00b0b6 (patch) | |
tree | 5cc2cb953bf9ab4fcc737af3cfe3efdbe398f158 /tests | |
parent | 566dfa45f62b90b4323ba782abf69894515f84cc (diff) |
Fix compatibility with Referrer-Policy: "strict-origin" (#8170)
Diffstat (limited to 'tests')
-rw-r--r-- | tests/ActionTestCase.php | 3 | ||||
-rw-r--r-- | tests/Rcmail/Rcmail.php | 9 |
2 files changed, 12 insertions, 0 deletions
diff --git a/tests/ActionTestCase.php b/tests/ActionTestCase.php index eb69bd7be..1068a60f3 100644 --- a/tests/ActionTestCase.php +++ b/tests/ActionTestCase.php @@ -12,6 +12,9 @@ class ActionTestCase extends PHPUnit\Framework\TestCase static function setUpBeforeClass(): void { + // reset some interfering globals set in other tests + $_SERVER['REQUEST_URI'] = ''; + $rcmail = rcmail::get_instance(); $rcmail->load_gui(); } diff --git a/tests/Rcmail/Rcmail.php b/tests/Rcmail/Rcmail.php index 8ed783f07..873bbcab4 100644 --- a/tests/Rcmail/Rcmail.php +++ b/tests/Rcmail/Rcmail.php @@ -124,21 +124,29 @@ class Rcmail_Rcmail extends ActionTestCase function test_url() { $rcmail = rcmail::get_instance(); + $this->assertEquals( './?_task=cli&_action=test', $rcmail->url('test'), "Action only" ); + $this->assertEquals( './?_task=cli&_action=test&_a=AA', $rcmail->url(['action' => 'test', 'a' => 'AA']), "Unprefixed parameters" ); + $this->assertEquals( './?_task=cli&_action=test&_b=BB', $rcmail->url(['_action' => 'test', '_b' => 'BB', '_c' => null]), "Prefixed parameters (skip empty)" ); + + $this->assertEquals('./?_task=cli', $rcmail->url([]), "Empty input"); + $_SERVER['REQUEST_URI'] = '/rc/?_task=mail'; + $this->assertEquals('/rc/?_task=cli', $rcmail->url([]), "Empty input with REQUEST_URI prefix"); + $this->assertEquals( '/sub/?_task=cli&_action=test&_mode=ABS', $rcmail->url(['_action' => 'test', '_mode' => 'ABS'], true), @@ -158,6 +166,7 @@ class Rcmail_Rcmail extends ActionTestCase $rcmail->url(['_action' => 'test', '_mode' => 'ABS'], true), "Absolute URL (root)" ); + $_SERVER['SCRIPT_NAME'] = ''; $this->assertEquals( '/?_task=cli&_action=test&_mode=ABS', |