summaryrefslogtreecommitdiff
path: root/tests/php
diff options
context:
space:
mode:
authorvalmat <ufabiz@gmail.com>2014-03-28 20:18:15 +0600
committervalmat <ufabiz@gmail.com>2014-03-28 20:18:15 +0600
commit168eeabc6e52165a71a3130c5e0f26a7fd9382c9 (patch)
treebd1d5e47bb66310674048a31735f8e1b07510fc4 /tests/php
parent708a22fae15b13db871ca5ffc73004c70f0584fe (diff)
add new tests: Test call function
Diffstat (limited to 'tests/php')
-rw-r--r--tests/php/dbg.php1
-rwxr-xr-xtests/php/php_alias.sh2
-rw-r--r--tests/php/phpt/variables/013-calling-php-functions.phpt113
-rw-r--r--tests/php/phpt/variables/014-calling-php-functions.phpt113
-rw-r--r--tests/php/phpt/variables/015-calling-php-functions.phpt109
-rw-r--r--tests/php/phpt/variables/016-calling-php-functions.phpt113
-rw-r--r--tests/php/phpt/variables/017-calling-php-functions.phpt115
7 files changed, 565 insertions, 1 deletions
diff --git a/tests/php/dbg.php b/tests/php/dbg.php
index 9a28fc6..2040f01 100644
--- a/tests/php/dbg.php
+++ b/tests/php/dbg.php
@@ -11,3 +11,4 @@
+
diff --git a/tests/php/php_alias.sh b/tests/php/php_alias.sh
index 34c2918..f4c7f8f 100755
--- a/tests/php/php_alias.sh
+++ b/tests/php/php_alias.sh
@@ -16,4 +16,4 @@ fi
LD_LIBRARY_PATH="$(cd $PWD/../.. && echo $PWD):${LD_LIBRARY_PATH}"
export LD_LIBRARY_PATH
-/usr/bin/php -d enable_dl=On -d extension_dir=../ext_dir -d extension=extfortest.so $1
+/usr/bin/php -d extension_dir=../ext_dir -d extension=extfortest.so $1
diff --git a/tests/php/phpt/variables/013-calling-php-functions.phpt b/tests/php/phpt/variables/013-calling-php-functions.phpt
new file mode 100644
index 0000000..5ec6644
--- /dev/null
+++ b/tests/php/phpt/variables/013-calling-php-functions.phpt
@@ -0,0 +1,113 @@
+--TEST--
+calling-php-functions from userspace
+--SKIPIF--
+<?php if (!extension_loaded("extension_for_tests")) print "skip"; ?>
+--FILEEOF--
+<?php
+
+
+
+function some_function($param) {
+ echo("userspace function called with parameters:\n");
+ var_export(func_get_args ());
+}
+
+TestVariables\fnFromUserSpace();
+
+
+
+--EXPECT--
+fnFromUserSpace
+userspace function called with parameters:
+array (
+ 0 => 'param1',
+)userspace function called with parameters:
+array (
+ 0 => 'param1',
+ 1 => 'param2',
+)userspace function called with parameters:
+array (
+ 0 => 'param1',
+ 1 => 'param2',
+ 2 => 'param3',
+)userspace function called with parameters:
+array (
+ 0 => 'param1',
+ 1 => 'param2',
+ 2 => 'param3',
+ 3 => 'param4',
+)userspace function called with parameters:
+array (
+ 0 => 'param1',
+ 1 => 'param2',
+ 2 => 'param3',
+ 3 => 'param4',
+ 4 =>
+ array (
+ 0 => 'param5',
+ 1 => 3.14159265359,
+ 2 => 28032014,
+ 'key' => 'value',
+ ),
+)userspace function called with parameters:
+array (
+ 0 => 'param1',
+ 1 => 'param2',
+ 2 => 'param3',
+ 3 => 'param4',
+ 4 =>
+ array (
+ 0 => 'param5',
+ 1 => 3.14159265359,
+ 2 => 28032014,
+ 'key' => 'value',
+ ),
+ 5 =>
+ DateTime::__set_state(array(
+ 'date' => '2014-03-28 19:42:15',
+ 'timezone_type' => 3,
+ 'timezone' => 'Asia/Yekaterinburg',
+ )),
+)userspace function called with parameters:
+array (
+ 0 => 'param1',
+ 1 => 'param2',
+ 2 => 'param3',
+ 3 => 'param4',
+ 4 => 'param5',
+ 5 => 'param6',
+ 6 => 'param7',
+)userspace function called with parameters:
+array (
+ 0 => 'param1',
+ 1 => 'param2',
+ 2 => 'param3',
+ 3 => 'param4',
+ 4 => 'param5',
+ 5 => 'param6',
+ 6 => 'param7',
+ 7 => 'param8',
+)userspace function called with parameters:
+array (
+ 0 => 'param1',
+ 1 => 'param2',
+ 2 => 'param3',
+ 3 => 'param4',
+ 4 => 'param5',
+ 5 => 'param6',
+ 6 => 'param7',
+ 7 => 'param8',
+ 8 => 'param9',
+)userspace function called with parameters:
+array (
+ 0 => 'param1',
+ 1 => 'param2',
+ 2 => 'param3',
+ 3 => 'param4',
+ 4 => 'param5',
+ 5 => 'param6',
+ 6 => 'param7',
+ 7 => 'param8',
+ 8 => 'param9',
+ 9 => 'param10',
+) \ No newline at end of file
diff --git a/tests/php/phpt/variables/014-calling-php-functions.phpt b/tests/php/phpt/variables/014-calling-php-functions.phpt
new file mode 100644
index 0000000..4a05e2a
--- /dev/null
+++ b/tests/php/phpt/variables/014-calling-php-functions.phpt
@@ -0,0 +1,113 @@
+--TEST--
+calling-php-Callback-functions
+--SKIPIF--
+<?php if (!extension_loaded("extension_for_tests")) print "skip"; ?>
+--FILEEOF--
+<?php
+
+
+
+function some_function($param) {
+ echo("Callback called with parameters:\n");
+ var_export(func_get_args ());
+}
+
+TestVariables\fnCallback("some_function");
+
+
+
+--EXPECT--
+call callback
+Callback called with parameters:
+array (
+ 0 => 'param1',
+)Callback called with parameters:
+array (
+ 0 => 'param1',
+ 1 => 'param2',
+)Callback called with parameters:
+array (
+ 0 => 'param1',
+ 1 => 'param2',
+ 2 => 'param3',
+)Callback called with parameters:
+array (
+ 0 => 'param1',
+ 1 => 'param2',
+ 2 => 'param3',
+ 3 => 'param4',
+)Callback called with parameters:
+array (
+ 0 => 'param1',
+ 1 => 'param2',
+ 2 => 'param3',
+ 3 => 'param4',
+ 4 =>
+ array (
+ 0 => 'param5',
+ 1 => 3.14159265359,
+ 2 => 28032014,
+ 'key' => 'value',
+ ),
+)Callback called with parameters:
+array (
+ 0 => 'param1',
+ 1 => 'param2',
+ 2 => 'param3',
+ 3 => 'param4',
+ 4 =>
+ array (
+ 0 => 'param5',
+ 1 => 3.14159265359,
+ 2 => 28032014,
+ 'key' => 'value',
+ ),
+ 5 =>
+ DateTime::__set_state(array(
+ 'date' => '2014-03-28 19:42:15',
+ 'timezone_type' => 3,
+ 'timezone' => 'Asia/Yekaterinburg',
+ )),
+)Callback called with parameters:
+array (
+ 0 => 'param1',
+ 1 => 'param2',
+ 2 => 'param3',
+ 3 => 'param4',
+ 4 => 'param5',
+ 5 => 'param6',
+ 6 => 'param7',
+)Callback called with parameters:
+array (
+ 0 => 'param1',
+ 1 => 'param2',
+ 2 => 'param3',
+ 3 => 'param4',
+ 4 => 'param5',
+ 5 => 'param6',
+ 6 => 'param7',
+ 7 => 'param8',
+)Callback called with parameters:
+array (
+ 0 => 'param1',
+ 1 => 'param2',
+ 2 => 'param3',
+ 3 => 'param4',
+ 4 => 'param5',
+ 5 => 'param6',
+ 6 => 'param7',
+ 7 => 'param8',
+ 8 => 'param9',
+)Callback called with parameters:
+array (
+ 0 => 'param1',
+ 1 => 'param2',
+ 2 => 'param3',
+ 3 => 'param4',
+ 4 => 'param5',
+ 5 => 'param6',
+ 6 => 'param7',
+ 7 => 'param8',
+ 8 => 'param9',
+ 9 => 'param10',
+) \ No newline at end of file
diff --git a/tests/php/phpt/variables/015-calling-php-functions.phpt b/tests/php/phpt/variables/015-calling-php-functions.phpt
new file mode 100644
index 0000000..e9382b2
--- /dev/null
+++ b/tests/php/phpt/variables/015-calling-php-functions.phpt
@@ -0,0 +1,109 @@
+--TEST--
+calling-php-Callback-functions (lambda)
+--SKIPIF--
+<?php if (!extension_loaded("extension_for_tests")) print "skip"; ?>
+--FILEEOF--
+<?php
+
+
+TestVariables\fnCallback( function($param) {
+ echo("Callback called with parameters:\n");
+ var_export(func_get_args ());
+});
+
+
+--EXPECT--
+call callback
+Callback called with parameters:
+array (
+ 0 => 'param1',
+)Callback called with parameters:
+array (
+ 0 => 'param1',
+ 1 => 'param2',
+)Callback called with parameters:
+array (
+ 0 => 'param1',
+ 1 => 'param2',
+ 2 => 'param3',
+)Callback called with parameters:
+array (
+ 0 => 'param1',
+ 1 => 'param2',
+ 2 => 'param3',
+ 3 => 'param4',
+)Callback called with parameters:
+array (
+ 0 => 'param1',
+ 1 => 'param2',
+ 2 => 'param3',
+ 3 => 'param4',
+ 4 =>
+ array (
+ 0 => 'param5',
+ 1 => 3.14159265359,
+ 2 => 28032014,
+ 'key' => 'value',
+ ),
+)Callback called with parameters:
+array (
+ 0 => 'param1',
+ 1 => 'param2',
+ 2 => 'param3',
+ 3 => 'param4',
+ 4 =>
+ array (
+ 0 => 'param5',
+ 1 => 3.14159265359,
+ 2 => 28032014,
+ 'key' => 'value',
+ ),
+ 5 =>
+ DateTime::__set_state(array(
+ 'date' => '2014-03-28 19:42:15',
+ 'timezone_type' => 3,
+ 'timezone' => 'Asia/Yekaterinburg',
+ )),
+)Callback called with parameters:
+array (
+ 0 => 'param1',
+ 1 => 'param2',
+ 2 => 'param3',
+ 3 => 'param4',
+ 4 => 'param5',
+ 5 => 'param6',
+ 6 => 'param7',
+)Callback called with parameters:
+array (
+ 0 => 'param1',
+ 1 => 'param2',
+ 2 => 'param3',
+ 3 => 'param4',
+ 4 => 'param5',
+ 5 => 'param6',
+ 6 => 'param7',
+ 7 => 'param8',
+)Callback called with parameters:
+array (
+ 0 => 'param1',
+ 1 => 'param2',
+ 2 => 'param3',
+ 3 => 'param4',
+ 4 => 'param5',
+ 5 => 'param6',
+ 6 => 'param7',
+ 7 => 'param8',
+ 8 => 'param9',
+)Callback called with parameters:
+array (
+ 0 => 'param1',
+ 1 => 'param2',
+ 2 => 'param3',
+ 3 => 'param4',
+ 4 => 'param5',
+ 5 => 'param6',
+ 6 => 'param7',
+ 7 => 'param8',
+ 8 => 'param9',
+ 9 => 'param10',
+) \ No newline at end of file
diff --git a/tests/php/phpt/variables/016-calling-php-functions.phpt b/tests/php/phpt/variables/016-calling-php-functions.phpt
new file mode 100644
index 0000000..46fda6e
--- /dev/null
+++ b/tests/php/phpt/variables/016-calling-php-functions.phpt
@@ -0,0 +1,113 @@
+--TEST--
+calling-php-Callback-functions (__invoke)
+--SKIPIF--
+<?php if (!extension_loaded("extension_for_tests")) print "skip"; ?>
+--FILEEOF--
+<?php
+
+
+class CallableClass {
+ public function __invoke() {
+ echo("Callback called with parameters:\n");
+ var_export(func_get_args ());
+ }
+}
+
+TestVariables\fnCallback(new CallableClass());
+
+
+--EXPECT--
+call callback
+Callback called with parameters:
+array (
+ 0 => 'param1',
+)Callback called with parameters:
+array (
+ 0 => 'param1',
+ 1 => 'param2',
+)Callback called with parameters:
+array (
+ 0 => 'param1',
+ 1 => 'param2',
+ 2 => 'param3',
+)Callback called with parameters:
+array (
+ 0 => 'param1',
+ 1 => 'param2',
+ 2 => 'param3',
+ 3 => 'param4',
+)Callback called with parameters:
+array (
+ 0 => 'param1',
+ 1 => 'param2',
+ 2 => 'param3',
+ 3 => 'param4',
+ 4 =>
+ array (
+ 0 => 'param5',
+ 1 => 3.14159265359,
+ 2 => 28032014,
+ 'key' => 'value',
+ ),
+)Callback called with parameters:
+array (
+ 0 => 'param1',
+ 1 => 'param2',
+ 2 => 'param3',
+ 3 => 'param4',
+ 4 =>
+ array (
+ 0 => 'param5',
+ 1 => 3.14159265359,
+ 2 => 28032014,
+ 'key' => 'value',
+ ),
+ 5 =>
+ DateTime::__set_state(array(
+ 'date' => '2014-03-28 19:42:15',
+ 'timezone_type' => 3,
+ 'timezone' => 'Asia/Yekaterinburg',
+ )),
+)Callback called with parameters:
+array (
+ 0 => 'param1',
+ 1 => 'param2',
+ 2 => 'param3',
+ 3 => 'param4',
+ 4 => 'param5',
+ 5 => 'param6',
+ 6 => 'param7',
+)Callback called with parameters:
+array (
+ 0 => 'param1',
+ 1 => 'param2',
+ 2 => 'param3',
+ 3 => 'param4',
+ 4 => 'param5',
+ 5 => 'param6',
+ 6 => 'param7',
+ 7 => 'param8',
+)Callback called with parameters:
+array (
+ 0 => 'param1',
+ 1 => 'param2',
+ 2 => 'param3',
+ 3 => 'param4',
+ 4 => 'param5',
+ 5 => 'param6',
+ 6 => 'param7',
+ 7 => 'param8',
+ 8 => 'param9',
+)Callback called with parameters:
+array (
+ 0 => 'param1',
+ 1 => 'param2',
+ 2 => 'param3',
+ 3 => 'param4',
+ 4 => 'param5',
+ 5 => 'param6',
+ 6 => 'param7',
+ 7 => 'param8',
+ 8 => 'param9',
+ 9 => 'param10',
+) \ No newline at end of file
diff --git a/tests/php/phpt/variables/017-calling-php-functions.phpt b/tests/php/phpt/variables/017-calling-php-functions.phpt
new file mode 100644
index 0000000..630399a
--- /dev/null
+++ b/tests/php/phpt/variables/017-calling-php-functions.phpt
@@ -0,0 +1,115 @@
+--TEST--
+calling-php-Callback-functions (method of class)
+--SKIPIF--
+<?php if (!extension_loaded("extension_for_tests")) print "skip"; ?>
+--FILEEOF--
+<?php
+
+
+class someClass {
+ function someMethod() {
+ echo("Callback called with parameters:\n");
+ var_export(func_get_args ());
+ }
+}
+
+$anObject = new someClass();
+$methodVariable = array($anObject, 'someMethod');
+TestVariables\fnCallback($methodVariable);
+
+
+--EXPECT--
+call callback
+Callback called with parameters:
+array (
+ 0 => 'param1',
+)Callback called with parameters:
+array (
+ 0 => 'param1',
+ 1 => 'param2',
+)Callback called with parameters:
+array (
+ 0 => 'param1',
+ 1 => 'param2',
+ 2 => 'param3',
+)Callback called with parameters:
+array (
+ 0 => 'param1',
+ 1 => 'param2',
+ 2 => 'param3',
+ 3 => 'param4',
+)Callback called with parameters:
+array (
+ 0 => 'param1',
+ 1 => 'param2',
+ 2 => 'param3',
+ 3 => 'param4',
+ 4 =>
+ array (
+ 0 => 'param5',
+ 1 => 3.14159265359,
+ 2 => 28032014,
+ 'key' => 'value',
+ ),
+)Callback called with parameters:
+array (
+ 0 => 'param1',
+ 1 => 'param2',
+ 2 => 'param3',
+ 3 => 'param4',
+ 4 =>
+ array (
+ 0 => 'param5',
+ 1 => 3.14159265359,
+ 2 => 28032014,
+ 'key' => 'value',
+ ),
+ 5 =>
+ DateTime::__set_state(array(
+ 'date' => '2014-03-28 19:42:15',
+ 'timezone_type' => 3,
+ 'timezone' => 'Asia/Yekaterinburg',
+ )),
+)Callback called with parameters:
+array (
+ 0 => 'param1',
+ 1 => 'param2',
+ 2 => 'param3',
+ 3 => 'param4',
+ 4 => 'param5',
+ 5 => 'param6',
+ 6 => 'param7',
+)Callback called with parameters:
+array (
+ 0 => 'param1',
+ 1 => 'param2',
+ 2 => 'param3',
+ 3 => 'param4',
+ 4 => 'param5',
+ 5 => 'param6',
+ 6 => 'param7',
+ 7 => 'param8',
+)Callback called with parameters:
+array (
+ 0 => 'param1',
+ 1 => 'param2',
+ 2 => 'param3',
+ 3 => 'param4',
+ 4 => 'param5',
+ 5 => 'param6',
+ 6 => 'param7',
+ 7 => 'param8',
+ 8 => 'param9',
+)Callback called with parameters:
+array (
+ 0 => 'param1',
+ 1 => 'param2',
+ 2 => 'param3',
+ 3 => 'param4',
+ 4 => 'param5',
+ 5 => 'param6',
+ 6 => 'param7',
+ 7 => 'param8',
+ 8 => 'param9',
+ 9 => 'param10',
+) \ No newline at end of file