Browse Source
assert() user message
assert() user message
Added 2nd, optional, param to assert. When passed in it will be added to the printed warnings and passed as a 4th param to a callback. PR 150 by Lonny Kapelushnikpull/184/head
8 changed files with 145 additions and 19 deletions
-
2NEWS
-
36ext/standard/assert.c
-
5ext/standard/tests/assert/assert04.phpt
-
26ext/standard/tests/assert/assert_basic6.phpt
-
11ext/standard/tests/assert/assert_error1.phpt
-
30ext/standard/tests/assert/assert_error2.phpt
-
21ext/standard/tests/assert/assert_error3.phpt
-
21ext/standard/tests/assert/assert_error4.phpt
@ -0,0 +1,26 @@ |
|||||
|
--TEST-- |
||||
|
assert() - basic - Test that bailout works |
||||
|
--INI-- |
||||
|
assert.active = 1 |
||||
|
assert.warning = 1 |
||||
|
assert.callback = f1 |
||||
|
assert.quiet_eval = 1 |
||||
|
assert.bail = 0 |
||||
|
--FILE-- |
||||
|
<?php |
||||
|
function f1($message) |
||||
|
{ |
||||
|
echo "f1 called\n"; |
||||
|
} |
||||
|
|
||||
|
//bail out on error |
||||
|
var_dump($rao = assert_options(ASSERT_BAIL, 1)); |
||||
|
$sa = "0 != 0"; |
||||
|
var_dump($r2 = assert($sa, "0 is 0")); |
||||
|
echo "If this is printed BAIL hasn't worked"; |
||||
|
--EXPECTF-- |
||||
|
int(0) |
||||
|
f1 called |
||||
|
|
||||
|
Warning: assert(): 0 is 0: "0 != 0" failed in %s on line 10 |
||||
|
|
||||
@ -0,0 +1,30 @@ |
|||||
|
--TEST-- |
||||
|
assert() - basic - Test that bailout works |
||||
|
--INI-- |
||||
|
assert.active = 1 |
||||
|
assert.warning = 1 |
||||
|
assert.callback = f1 |
||||
|
assert.quiet_eval = 1 |
||||
|
assert.bail = 0 |
||||
|
error_reporting = -1 |
||||
|
display_errors = 1 |
||||
|
--FILE-- |
||||
|
<?php |
||||
|
function f1($script, $line, $message, $user_message) |
||||
|
{ |
||||
|
echo "f1 called\n"; |
||||
|
} |
||||
|
|
||||
|
//bail out on error |
||||
|
var_dump($rao = assert_options(ASSERT_BAIL, 1)); |
||||
|
$sa = "0 != 0"; |
||||
|
var_dump($r2 = assert($sa)); |
||||
|
echo "If this is printed BAIL hasn't worked"; |
||||
|
--EXPECTF-- |
||||
|
int(0) |
||||
|
|
||||
|
Warning: Missing argument 4 for f1() in %s on line 2 |
||||
|
f1 called |
||||
|
|
||||
|
Warning: assert(): Assertion "0 != 0" failed in %s on line 10 |
||||
|
|
||||
@ -0,0 +1,21 @@ |
|||||
|
--TEST-- |
||||
|
assert() - basic - Test recoverable error |
||||
|
--INI-- |
||||
|
assert.active = 1 |
||||
|
assert.warning = 1 |
||||
|
assert.callback = f1 |
||||
|
assert.quiet_eval = 0 |
||||
|
assert.bail = 0 |
||||
|
error_reporting = -1 |
||||
|
display_errors = 1 |
||||
|
--FILE-- |
||||
|
<?php |
||||
|
$sa = "0 $ 0"; |
||||
|
var_dump($r2 = assert($sa)); |
||||
|
--EXPECTF-- |
||||
|
|
||||
|
Parse error: syntax error, unexpected '$' in %s(3) : assert code on line 1 |
||||
|
|
||||
|
Catchable fatal error: assert(): Failure evaluating code: |
||||
|
0 $ 0 in %s on line 3 |
||||
|
|
||||
@ -0,0 +1,21 @@ |
|||||
|
--TEST-- |
||||
|
assert() - basic - Test recoverable error |
||||
|
--INI-- |
||||
|
assert.active = 1 |
||||
|
assert.warning = 1 |
||||
|
assert.callback = f1 |
||||
|
assert.quiet_eval = 0 |
||||
|
assert.bail = 0 |
||||
|
error_reporting = -1 |
||||
|
display_errors = 1 |
||||
|
--FILE-- |
||||
|
<?php |
||||
|
$sa = "0 $ 0"; |
||||
|
var_dump($r2 = assert($sa, "Describing what was asserted")); |
||||
|
--EXPECTF-- |
||||
|
|
||||
|
Parse error: syntax error, unexpected '$' in %s(3) : assert code on line 1 |
||||
|
|
||||
|
Catchable fatal error: assert(): Failure evaluating code: |
||||
|
Describing what was asserted:"0 $ 0" in %s on line 3 |
||||
|
|
||||
Write
Preview
Loading…
Cancel
Save
Reference in new issue