public function testSuperGlobals()
{
$this->assertEvaluatesTo(function () {
$_COOKIE;
}, $_COOKIE);
$this->assertEvaluatesTo(function () {
$_ENV;
}, $_ENV);
$this->assertEvaluatesTo(function () {
$_FILES;
}, $_FILES);
$this->assertEvaluatesTo(function () {
$_GET;
}, $_GET);
$this->assertEvaluatesTo(function () {
$_POST;
}, $_POST);
$this->assertEvaluatesTo(function () {
$_REQUEST;
}, $_REQUEST);
$this->assertEvaluatesTo(function () {
$_SERVER;
}, $_SERVER);
$this->assertEvaluatesTo(function () {
$_SESSION;
}, $_SESSION);
$_COOKIE['foo'] = 'cookie';
$this->assertEvaluatesTo(function () {
$_COOKIE['foo'];
}, 'cookie');
$_ENV['boo'] = 'environment';
$this->assertEvaluatesTo(function () {
$_ENV['boo'];
}, 'environment');
$_FILES['fff'] = 'files';
$this->assertEvaluatesTo(function () {
$_FILES['fff'];
}, 'files');
$_GET['stuff'] = 'get';
$this->assertEvaluatesTo(function () {
$_GET['stuff'];
}, 'get');
$_POST['other'] = 'post';
$this->assertEvaluatesTo(function () {
$_POST['other'];
}, 'post');
$_REQUEST['bar'] = 'request';
$this->assertEvaluatesTo(function () {
$_REQUEST['bar'];
}, 'request');
$_SERVER['opts'] = 'server';
$this->assertEvaluatesTo(function () {
$_SERVER['opts'];
}, 'server');
$_SESSION['var'] = 'session';
$this->assertEvaluatesTo(function () {
$_SESSION['var'];
}, 'session');
$_COOKIE = [1, 'ttt'];
$this->assertEvaluatesTo(function () {
$_COOKIE;
}, [1, 'ttt']);
$_ENV = '12345';
$this->assertEvaluatesTo(function () {
$_ENV;
}, '12345');
$_FILES = 93.40000000000001;
$this->assertEvaluatesTo(function () {
$_FILES;
}, 93.40000000000001);
$_GET = range(1, 10, 2);
$this->assertEvaluatesTo(function () {
$_GET;
}, range(1, 10, 2));
$_POST = 'a post array';
$this->assertEvaluatesTo(function () {
$_POST;
}, 'a post array');
$_REQUEST = ['fooo'];
$this->assertEvaluatesTo(function () {
$_REQUEST;
}, ['fooo']);
//$_SERVER must be array or PHPUnit goes boom.
$_SERVER = ['p' => false];
$this->assertEvaluatesTo(function () {
$_SERVER;
}, ['p' => false]);
$_SESSION = [9, 7, 5, 4, '111'];
$this->assertEvaluatesTo(function () {
$_SESSION;
}, [9, 7, 5, 4, '111']);
$var = [1];
$_COOKIE =& $var;
$this->assertEvaluatesTo(function () {
$_COOKIE;
}, $var);
$_ENV =& $var;
$this->assertEvaluatesTo(function () {
$_ENV;
}, $var);
$_FILES =& $var;
$this->assertEvaluatesTo(function () {
$_FILES;
}, $var);
$_GET =& $var;
$this->assertEvaluatesTo(function () {
$_GET;
}, $var);
$_POST =& $var;
$this->assertEvaluatesTo(function () {
$_POST;
}, $var);
$_REQUEST =& $var;
$this->assertEvaluatesTo(function () {
$_REQUEST;
}, $var);
$_SERVER =& $var;
$this->assertEvaluatesTo(function () {
$_SERVER;
}, $var);
$_SESSION =& $var;
$this->assertEvaluatesTo(function () {
$_SESSION;
}, $var);
}