aboutsummaryrefslogtreecommitdiffstats
path: root/tests/mock/request.php
diff options
context:
space:
mode:
authorNils Adermann <naderman@naderman.de>2011-08-18 19:15:00 -0400
committerNils Adermann <naderman@naderman.de>2011-08-18 19:15:00 -0400
commit052e33823b98ec3e51fdb424937e72dd1f33d11f (patch)
tree975749ed51ac43c98940b7dd7b0ed03a9f99d7a6 /tests/mock/request.php
parentd06dcd69e60bc3e6eafb4a11dfb1639fa4e4646b (diff)
parentb05382d226d2c5d68ff5a483d8885f65e754c90d (diff)
downloadforums-052e33823b98ec3e51fdb424937e72dd1f33d11f.tar
forums-052e33823b98ec3e51fdb424937e72dd1f33d11f.tar.gz
forums-052e33823b98ec3e51fdb424937e72dd1f33d11f.tar.bz2
forums-052e33823b98ec3e51fdb424937e72dd1f33d11f.tar.xz
forums-052e33823b98ec3e51fdb424937e72dd1f33d11f.zip
Merge remote-tracking branch 'github-igorw/feature/request-class' into develop
* github-igorw/feature/request-class: [feature/request-class] Fix session_testable_factory [feature/request-class] Adjust code base to do html decoding manually [feature/request-class] Remove $html_encode arg, force manual decoding [feature/request-class] Do not html escape user agent in header_filename [feature/request-class] Make use of the is_secure() method [feature/request-class] Add is_secure method to request for HTTPS [feature/request-class] Make server() use the $html_encode parameter [feature/request-class] Remove useless condition [feature/request-class] Minor spacing CS adjustments [feature/request-class] Add server(), header() and is_ajax() to request
Diffstat (limited to 'tests/mock/request.php')
-rw-r--r--tests/mock/request.php38
1 files changed, 37 insertions, 1 deletions
diff --git a/tests/mock/request.php b/tests/mock/request.php
index da4015e78b..8b2708304c 100644
--- a/tests/mock/request.php
+++ b/tests/mock/request.php
@@ -11,12 +11,13 @@ class phpbb_mock_request implements phpbb_request_interface
{
protected $data;
- public function __construct($get = array(), $post = array(), $cookie = array(), $request = false)
+ public function __construct($get = array(), $post = array(), $cookie = array(), $server = array(), $request = false)
{
$this->data[phpbb_request_interface::GET] = $get;
$this->data[phpbb_request_interface::POST] = $post;
$this->data[phpbb_request_interface::COOKIE] = $cookie;
$this->data[phpbb_request_interface::REQUEST] = ($request === false) ? $post + $get : $request;
+ $this->data[phpbb_request_interface::SERVER] = $server;
}
public function overwrite($var_name, $value, $super_global = phpbb_request_interface::REQUEST)
@@ -29,6 +30,18 @@ class phpbb_mock_request implements phpbb_request_interface
return isset($this->data[$super_global][$var_name]) ? $this->data[$super_global][$var_name] : $default;
}
+ public function server($var_name, $default = '')
+ {
+ $super_global = phpbb_request_interface::SERVER;
+ return isset($this->data[$super_global][$var_name]) ? $this->data[$super_global][$var_name] : $default;
+ }
+
+ public function header($header_name, $default = '')
+ {
+ $var_name = 'HTTP_' . str_replace('-', '_', strtoupper($header_name));
+ return $this->server($var_name, $default);
+ }
+
public function is_set_post($name)
{
return $this->is_set($name, phpbb_request_interface::POST);
@@ -39,8 +52,31 @@ class phpbb_mock_request implements phpbb_request_interface
return isset($this->data[$super_global][$var]);
}
+ public function is_ajax()
+ {
+ return false;
+ }
+
+ public function is_secure()
+ {
+ return false;
+ }
+
public function variable_names($super_global = phpbb_request_interface::REQUEST)
{
return array_keys($this->data[$super_global]);
}
+
+ /* custom methods */
+
+ public function set_header($header_name, $value)
+ {
+ $var_name = 'HTTP_' . str_replace('-', '_', strtoupper($header_name));
+ $this->data[phpbb_request_interface::SERVER][$var_name] = $value;
+ }
+
+ public function merge($super_global = phpbb_request_interface::REQUEST, $values)
+ {
+ $this->data[$super_global] = array_merge($this->data[$super_global], $values);
+ }
}