PageRenderTime 36ms CodeModel.GetById 15ms RepoModel.GetById 1ms app.codeStats 0ms

/hphp/test/zend/bad/ext/standard/tests/network/setcookie.php

http://github.com/facebook/hiphop-php
PHP | 60 lines | 53 code | 7 blank | 0 comment | 4 complexity | ae148fcf8b49849980969dbaff4e4aaa MD5 | raw file
Possible License(s): LGPL-2.1, BSD-2-Clause, BSD-3-Clause, MPL-2.0-no-copyleft-exception, MIT, LGPL-2.0, Apache-2.0
  1. <?php
  2. setcookie('name');
  3. setcookie('name', 'value');
  4. setcookie('name', 'space value');
  5. setcookie('name', 'value', 0);
  6. setcookie('name', 'value', $tsp = time() + 5);
  7. setcookie('name', 'value', $tsn = time() - 6);
  8. setcookie('name', 'value', $tsc = time());
  9. setcookie('name', 'value', 0, '/path/');
  10. setcookie('name', 'value', 0, '', 'domain.tld');
  11. setcookie('name', 'value', 0, '', '', TRUE);
  12. setcookie('name', 'value', 0, '', '', FALSE, TRUE);
  13. $expected = array(
  14. 'Set-Cookie: name=',
  15. 'Set-Cookie: name=value',
  16. 'Set-Cookie: name=space+value',
  17. 'Set-Cookie: name=value',
  18. 'Set-Cookie: name=value; expires='.date('D, d-M-Y H:i:s', $tsp).' GMT; Max-Age=5',
  19. 'Set-Cookie: name=value; expires='.date('D, d-M-Y H:i:s', $tsn).' GMT; Max-Age=-6',
  20. 'Set-Cookie: name=value; expires='.date('D, d-M-Y H:i:s', $tsc).' GMT; Max-Age=0',
  21. 'Set-Cookie: name=value; path=/path/',
  22. 'Set-Cookie: name=value; domain=domain.tld',
  23. 'Set-Cookie: name=value; secure',
  24. 'Set-Cookie: name=value; httponly'
  25. );
  26. $headers = headers_list();
  27. if (($i = count($expected)) > count($headers))
  28. {
  29. echo "Less headers are being sent than expected - aborting";
  30. return;
  31. }
  32. do
  33. {
  34. if (strncmp(current($headers), 'Set-Cookie:', 11) !== 0)
  35. {
  36. continue;
  37. }
  38. if (current($headers) === current($expected))
  39. {
  40. $i--;
  41. }
  42. else
  43. {
  44. echo "Header mismatch:\n\tExpected: "
  45. .current($expected)
  46. ."\n\tReceived: ".current($headers)."\n";
  47. }
  48. next($expected);
  49. }
  50. while (next($headers) !== FALSE);
  51. echo ($i === 0)
  52. ? 'OK'
  53. : 'A total of '.$i.' errors found.';