diff options
Diffstat (limited to 'tests/classes')
-rwxr-xr-x | tests/classes/interface_construct.phpt | 24 | ||||
-rwxr-xr-x | tests/classes/interface_optional_arg.phpt | 27 |
2 files changed, 51 insertions, 0 deletions
diff --git a/tests/classes/interface_construct.phpt b/tests/classes/interface_construct.phpt new file mode 100755 index 0000000000..406462e17a --- /dev/null +++ b/tests/classes/interface_construct.phpt @@ -0,0 +1,24 @@ +--TEST-- +ZE2 An interface constructor signature must not be inherited +--SKIPIF-- +<?php if (version_compare(zend_version(), '2.0.0-dev', '<')) die('skip ZendEngine 2 needed'); ?> +--FILE-- +<?php +error_reporting(4095); + +interface test { + public function __construct($foo); +} + +class foo implements test { + public function __construct() { + echo "foo\n"; + } +} + +$foo = new foo; + +?> +--EXPECT-- +foo + diff --git a/tests/classes/interface_optional_arg.phpt b/tests/classes/interface_optional_arg.phpt new file mode 100755 index 0000000000..05f2fc41df --- /dev/null +++ b/tests/classes/interface_optional_arg.phpt @@ -0,0 +1,27 @@ +--TEST-- +ZE2 An interface method allows additional default arguments +--SKIPIF-- +<?php if (version_compare(zend_version(), '2.0.0-dev', '<')) die('skip ZendEngine 2 needed'); ?> +--FILE-- +<?php + +error_reporting(4095); + +interface test { + public function bar(); +} + +class foo implements test { + + public function bar($foo = NULL) { + echo "foo\n"; + } +} + +$foo = new foo; +$foo->bar(); + +?> +--EXPECT-- +foo + |