diff --git a/lib/phpunit/classes/advanced_testcase.php b/lib/phpunit/classes/advanced_testcase.php index 23fb2633366..e3b32c30d8b 100644 --- a/lib/phpunit/classes/advanced_testcase.php +++ b/lib/phpunit/classes/advanced_testcase.php @@ -637,7 +637,7 @@ abstract class advanced_testcase extends base_testcase { } return TEST_EXTERNAL_FILES_HTTPS_URL.$path; } - return "https://download.moodle.org/unittest/{$path}"; + return "https://download.moodle.org/unittest{$path}"; } if (defined('TEST_EXTERNAL_FILES_HTTP_URL')) { @@ -646,7 +646,7 @@ abstract class advanced_testcase extends base_testcase { } return TEST_EXTERNAL_FILES_HTTP_URL.$path; } - return "http://download.moodle.org/unittest/{$path}"; + return "http://download.moodle.org/unittest{$path}"; } /** diff --git a/lib/phpunit/tests/advanced_test.php b/lib/phpunit/tests/advanced_test.php index 837a21bc428..dd6a93764cb 100644 --- a/lib/phpunit/tests/advanced_test.php +++ b/lib/phpunit/tests/advanced_test.php @@ -385,6 +385,30 @@ final class advanced_test extends \advanced_testcase { $this->assertTrue($DB->record_exists('user', array('username' => 'onemore'))); } + /** + * Some basic tests for the getExternalTestFileUrl() method. + */ + public function test_external_file_url(): void { + $url = self::getExternalTestFileUrl('testfile.txt'); + // There should only be a // after the protocol. + $this->assertCount(2, explode('//', $url)); + + if (defined('TEST_EXTERNAL_FILES_HTTP_URL')) { + $this->assertStringContainsString(TEST_EXTERNAL_FILES_HTTP_URL, $url); + } else { + $this->assertStringContainsString('http://download.moodle.org/unittest', $url); + } + + $url = self::getExternalTestFileUrl('testfile.txt', true); + $this->assertCount(2, explode('//', $url)); + + if (defined('TEST_EXTERNAL_FILES_HTTPS_URL')) { + $this->assertStringContainsString(TEST_EXTERNAL_FILES_HTTPS_URL, $url); + } else { + $this->assertStringContainsString('https://download.moodle.org/unittest', $url); + } + } + public function test_assert_time_current() { $this->assertTimeCurrent(time());