php-src/ext/session/tests/session_set_save_handler_error3.phpt
Ant Phillips 79b73d1218 New set of session extension tests for PHP 5.3 branch.
These hopefully test a reasonable set of basic, error and variations for
the twenty or so session functions. Note however that they do not
test all the session configuration settings, nor do they test anything
with register_globals enabled.
2008-04-22 16:04:30 +00:00

41 lines
1.1 KiB
PHP

--TEST--
Test session_set_save_handler() function : error functionality
--SKIPIF--
<?php include('skipif.inc'); ?>
--FILE--
<?php
ob_start();
/*
* Prototype : bool session_set_save_handler(callback $open, callback $close, callback $read, callback $write, callback $destroy, callback $gc)
* Description : Sets user-level session storage functions
* Source code : ext/session/session.c
*/
echo "*** Testing session_set_save_handler() : error functionality ***\n";
function open($save_path, $session_name) {
throw new Exception("Do something bad..!");
}
function close() { return true; }
function read($id) { return false; }
function write($id, $session_data) { }
function destroy($id) { return true; }
function gc($maxlifetime) { return true; }
session_set_save_handler("open", "close", "read", "write", "destroy", "gc");
session_start();
ob_end_flush();
?>
--EXPECTF--
*** Testing session_set_save_handler() : error functionality ***
Fatal error: Uncaught exception 'Exception' with message 'Do something bad..!' in %s:%d
Stack trace:
#0 [internal function]: open('', 'PHPSESSID')
#1 %s(%d): session_start()
#2 {main}
thrown in %s on line %d