File:  [ELWIX - Embedded LightWeight unIX -] / embedaddon / php / ext / session / tests / session_regenerate_id_error.phpt
Revision 1.1.1.1 (vendor branch): download - view: text, annotated - select for diffs - revision graph
Tue Feb 21 23:48:01 2012 UTC (12 years, 4 months ago) by misho
Branches: php, MAIN
CVS tags: v5_4_3elwix, v5_4_29p0, v5_4_29, v5_4_20p0, v5_4_20, v5_4_17p0, v5_4_17, v5_3_10, HEAD
php

    1: --TEST--
    2: Test session_regenerate_id() function : error functionality
    3: --SKIPIF--
    4: <?php include('skipif.inc'); ?>
    5: --FILE--
    6: <?php
    7: 
    8: ob_start();
    9: 
   10: /* 
   11:  * Prototype : bool session_regenerate_id([bool $delete_old_session])
   12:  * Description : Update the current session id with a newly generated one 
   13:  * Source code : ext/session/session.c 
   14:  */
   15: 
   16: echo "*** Testing session_regenerate_id() : error functionality ***\n";
   17: 
   18: // Get an unset variable
   19: $unset_var = 10;
   20: unset($unset_var);
   21: 
   22: class classA
   23: {
   24:     public function __toString() {
   25:         return "Hello World!";
   26:     }
   27: }
   28: 
   29: $heredoc = <<<EOT
   30: Hello World!
   31: EOT;
   32: 
   33: $fp = fopen(__FILE__, "r");
   34: 
   35: // Unexpected values to be passed as arguments
   36: $inputs = array(
   37: 
   38:        // Integer data
   39: /*1*/  0,
   40:        1,
   41:        12345,
   42:        -2345,
   43: 
   44:        // Float data
   45: /*5*/  10.5,
   46:        -10.5,
   47:        12.3456789000e10,
   48:        12.3456789000E-10,
   49:        .5,
   50: 
   51:        // Null data
   52: /*10*/ NULL,
   53:        null,
   54: 
   55:        // Boolean data
   56: /*12*/ true,
   57:        false,
   58:        TRUE,
   59:        FALSE,
   60:        
   61:        // Empty strings
   62: /*16*/ "",
   63:        '',
   64: 
   65:        // Invalid string data
   66: /*18*/ "Nothing",
   67:        'Nothing',
   68:        $heredoc,
   69:        
   70:        // Object data
   71: /*21*/ new classA(),
   72: 
   73:        // Undefined data
   74: /*22*/ @$undefined_var,
   75: 
   76:        // Unset data
   77: /*23*/ @$unset_var,
   78: 
   79:        // Resource variable
   80: /*24*/ $fp
   81: );
   82: 
   83: 
   84: $iterator = 1;
   85: foreach($inputs as $input) {
   86:     echo "\n-- Iteration $iterator --\n";
   87:     var_dump(session_regenerate_id($input));
   88:     $iterator++;
   89: };
   90: 
   91: fclose($fp);
   92: echo "Done";
   93: ob_end_flush();
   94: ?>
   95: --EXPECTF--
   96: *** Testing session_regenerate_id() : error functionality ***
   97: 
   98: -- Iteration 1 --
   99: bool(false)
  100: 
  101: -- Iteration 2 --
  102: bool(false)
  103: 
  104: -- Iteration 3 --
  105: bool(false)
  106: 
  107: -- Iteration 4 --
  108: bool(false)
  109: 
  110: -- Iteration 5 --
  111: bool(false)
  112: 
  113: -- Iteration 6 --
  114: bool(false)
  115: 
  116: -- Iteration 7 --
  117: bool(false)
  118: 
  119: -- Iteration 8 --
  120: bool(false)
  121: 
  122: -- Iteration 9 --
  123: bool(false)
  124: 
  125: -- Iteration 10 --
  126: bool(false)
  127: 
  128: -- Iteration 11 --
  129: bool(false)
  130: 
  131: -- Iteration 12 --
  132: bool(false)
  133: 
  134: -- Iteration 13 --
  135: bool(false)
  136: 
  137: -- Iteration 14 --
  138: bool(false)
  139: 
  140: -- Iteration 15 --
  141: bool(false)
  142: 
  143: -- Iteration 16 --
  144: bool(false)
  145: 
  146: -- Iteration 17 --
  147: bool(false)
  148: 
  149: -- Iteration 18 --
  150: bool(false)
  151: 
  152: -- Iteration 19 --
  153: bool(false)
  154: 
  155: -- Iteration 20 --
  156: bool(false)
  157: 
  158: -- Iteration 21 --
  159: 
  160: Warning: session_regenerate_id() expects parameter 1 to be boolean, object given in %s on line %d
  161: NULL
  162: 
  163: -- Iteration 22 --
  164: bool(false)
  165: 
  166: -- Iteration 23 --
  167: bool(false)
  168: 
  169: -- Iteration 24 --
  170: 
  171: Warning: session_regenerate_id() expects parameter 1 to be boolean, resource given in %s on line %d
  172: NULL
  173: Done
  174: 

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>