mirror of
https://github.com/phpbb/phpbb.git
synced 2025-08-29 11:10:18 +02:00
[feature/request-class] Add server(), header() and is_ajax() to request
Extend the request class with helpers for reading server vars (server()) and HTTP request headers (header()). Refactor the existing code base to make use of these helpers, make $_SERVER a deactivated super global. Also introduce an is_ajax() method, which checks the X-Requested-With header for the value 'XMLHttpRequest', which is sent by JavaScript libraries, such as jQuery. PHPBB3-9716
This commit is contained in:
@@ -8,23 +8,27 @@
|
||||
*/
|
||||
|
||||
require_once dirname(__FILE__) . '/../../phpBB/includes/functions_download.php';
|
||||
require_once dirname(__FILE__) . '/../mock/request.php';
|
||||
|
||||
class phpbb_download_http_byte_range_test extends phpbb_test_case
|
||||
{
|
||||
public function test_find_range_request()
|
||||
{
|
||||
// Missing 'bytes=' prefix
|
||||
$_SERVER['HTTP_RANGE'] = 'bztes=';
|
||||
$GLOBALS['request'] = new phpbb_mock_request();
|
||||
$GLOBALS['request']->set_header('Range', 'bztes=');
|
||||
$this->assertEquals(false, phpbb_find_range_request());
|
||||
unset($_SERVER['HTTP_RANGE']);
|
||||
unset($GLOBALS['request']);
|
||||
|
||||
$GLOBALS['request'] = new phpbb_mock_request();
|
||||
$_ENV['HTTP_RANGE'] = 'bztes=';
|
||||
$this->assertEquals(false, phpbb_find_range_request());
|
||||
unset($_ENV['HTTP_RANGE']);
|
||||
|
||||
$_SERVER['HTTP_RANGE'] = 'bytes=0-0,123-125';
|
||||
$GLOBALS['request'] = new phpbb_mock_request();
|
||||
$GLOBALS['request']->set_header('Range', 'bytes=0-0,123-125');
|
||||
$this->assertEquals(array('0-0', '123-125'), phpbb_find_range_request());
|
||||
unset($_SERVER['HTTP_RANGE']);
|
||||
unset($GLOBALS['request']);
|
||||
}
|
||||
|
||||
/**
|
||||
|
Reference in New Issue
Block a user