diff options
| author | jvoisin | 2017-10-20 14:15:23 +0200 |
|---|---|---|
| committer | jvoisin | 2017-10-20 14:15:23 +0200 |
| commit | dfb9eb6f82e1393947229f1c09febc3806ab825a (patch) | |
| tree | 1a49e14b5efae2e8a5d3db7935d45778369231da /src | |
| parent | 48df50444fe449c3ba0cb7ded2ed7bf76e57a435 (diff) | |
Add a test to demonstrate the behaviour wrt. call_user_func
Diffstat (limited to 'src')
| -rw-r--r-- | src/tests/config/config_disabled_functions_chain_call_user_func.ini | 2 | ||||
| -rw-r--r-- | src/tests/disabled_functions_chain_call_user_func.phpt | 28 |
2 files changed, 30 insertions, 0 deletions
diff --git a/src/tests/config/config_disabled_functions_chain_call_user_func.ini b/src/tests/config/config_disabled_functions_chain_call_user_func.ini new file mode 100644 index 0000000..4f7a629 --- /dev/null +++ b/src/tests/config/config_disabled_functions_chain_call_user_func.ini | |||
| @@ -0,0 +1,2 @@ | |||
| 1 | sp.disable_function.function("outer>call_user_func>inner").simulation().drop(); | ||
| 2 | sp.disable_function.function("outer>inner").drop(); | ||
diff --git a/src/tests/disabled_functions_chain_call_user_func.phpt b/src/tests/disabled_functions_chain_call_user_func.phpt new file mode 100644 index 0000000..e13bd5a --- /dev/null +++ b/src/tests/disabled_functions_chain_call_user_func.phpt | |||
| @@ -0,0 +1,28 @@ | |||
| 1 | --TEST-- | ||
| 2 | Disable functions by matching the calltrace, with call_user_func involved | ||
| 3 | --SKIPIF-- | ||
| 4 | <?php if (!extension_loaded("snuffleupagus")) die "skip"; ?> | ||
| 5 | --INI-- | ||
| 6 | sp.configuration_file={PWD}/config/config_disabled_functions_chain_call_user_func.ini | ||
| 7 | --FILE-- | ||
| 8 | <?php | ||
| 9 | |||
| 10 | function outer() { | ||
| 11 | function inner() { | ||
| 12 | echo "I'm in the inner function!\n"; | ||
| 13 | } | ||
| 14 | echo "I'm in the outer function, before the call!\n"; | ||
| 15 | call_user_func("inner"); | ||
| 16 | echo "I'm in the outer function, after the call!\n"; | ||
| 17 | } | ||
| 18 | |||
| 19 | echo "I'm before the call to outer\n"; | ||
| 20 | outer(); | ||
| 21 | echo "I'm after the call to outer\n"; | ||
| 22 | ?> | ||
| 23 | --EXPECTF-- | ||
| 24 | I'm before the call to outer | ||
| 25 | I'm in the outer function, before the call! | ||
| 26 | [snuffleupagus][0.0.0.0][disabled_function][drop] The call to the function 'outer>inner' in %a/disabled_functions_chain_call_user_func.php:%d has been disabled. | ||
| 27 | I'm in the outer function, after the call! | ||
| 28 | I'm after the call to outer | ||
