helly           Mon Aug  2 04:30:00 2004 EDT

  Modified files:              
    /php-src/tests/classes      __call_002.phpt __set__get_002.phpt 
                                __set__get_003.phpt 
                                destructor_visibility_001.phpt 
                                destructor_visibility_002.phpt 
                                destructor_visibility_003.phpt 
  Log:
  MFB Enforce protocol of magic methods/classes
  
  
http://cvs.php.net/diff.php/php-src/tests/classes/__call_002.phpt?r1=1.1&r2=1.2&ty=u
Index: php-src/tests/classes/__call_002.phpt
diff -u /dev/null php-src/tests/classes/__call_002.phpt:1.2
--- /dev/null   Mon Aug  2 04:29:59 2004
+++ php-src/tests/classes/__call_002.phpt       Mon Aug  2 04:29:59 2004
@@ -0,0 +1,15 @@
+--TEST--
+ZE2 __call() signature check
+--SKIPIF--
+<?php if (version_compare(zend_version(), '2.0.0-dev', '<')) die('skip ZendEngine 2 
needed'); ?>
+--FILE--
+<?php
+
+class Test {
+       function __call() {
+       }
+}
+
+?>
+--EXPECTF--
+Fatal error: Method Test::__call() must take exactly 2 arguments in %s__call_002.php 
on line %d
http://cvs.php.net/diff.php/php-src/tests/classes/__set__get_002.phpt?r1=1.1&r2=1.2&ty=u
Index: php-src/tests/classes/__set__get_002.phpt
diff -u /dev/null php-src/tests/classes/__set__get_002.phpt:1.2
--- /dev/null   Mon Aug  2 04:29:59 2004
+++ php-src/tests/classes/__set__get_002.phpt   Mon Aug  2 04:29:59 2004
@@ -0,0 +1,14 @@
+--TEST--
+ZE2 __get() signature check
+--SKIPIF--
+<?php if (version_compare(zend_version(), '2.0.0-dev', '<')) die('skip ZendEngine 2 
needed'); ?>
+--FILE--
+<?php
+class Test {
+       function __get($x,$y) {
+       }
+}
+
+?>
+--EXPECTF--
+Fatal error: Method Test::__get() must take exactly 1 argument in 
%s__set__get_002.php on line %d
http://cvs.php.net/diff.php/php-src/tests/classes/__set__get_003.phpt?r1=1.1&r2=1.2&ty=u
Index: php-src/tests/classes/__set__get_003.phpt
diff -u /dev/null php-src/tests/classes/__set__get_003.phpt:1.2
--- /dev/null   Mon Aug  2 04:29:59 2004
+++ php-src/tests/classes/__set__get_003.phpt   Mon Aug  2 04:29:59 2004
@@ -0,0 +1,14 @@
+--TEST--
+ZE2 __set() signature check
+--SKIPIF--
+<?php if (version_compare(zend_version(), '2.0.0-dev', '<')) die('skip ZendEngine 2 
needed'); ?>
+--FILE--
+<?php
+class Test {
+       function __set() {
+       }
+}
+
+?>
+--EXPECTF--
+Fatal error: Method Test::__set() must take exactly 2 arguments in 
%s__set__get_003.php on line %d
http://cvs.php.net/diff.php/php-src/tests/classes/destructor_visibility_001.phpt?r1=1.1&r2=1.2&ty=u
Index: php-src/tests/classes/destructor_visibility_001.phpt
diff -u /dev/null php-src/tests/classes/destructor_visibility_001.phpt:1.2
--- /dev/null   Mon Aug  2 04:30:00 2004
+++ php-src/tests/classes/destructor_visibility_001.phpt        Mon Aug  2 04:29:59 
2004
@@ -0,0 +1,24 @@
+--TEST--
+ZE2 Ensuring destructor visibility
+--SKIPIF--
+<?php if (version_compare(zend_version(), '2.0.0-dev', '<')) die('skip ZendEngine 2 
needed'); ?>
+--FILE--
+<?php
+
+class Base {
+       private function __destruct() {
+       echo __METHOD__ . "\n";
+       }
+}
+
+class Derived extends Base {
+}
+
+$obj = new Derived;
+
+unset($obj);
+
+?>
+===DONE===
+--EXPECTF--
+Fatal error: Call to private Derived::__destruct() from context '' in 
%sdestructor_visibility_001.php on line %d
http://cvs.php.net/diff.php/php-src/tests/classes/destructor_visibility_002.phpt?r1=1.1&r2=1.2&ty=u
Index: php-src/tests/classes/destructor_visibility_002.phpt
diff -u /dev/null php-src/tests/classes/destructor_visibility_002.phpt:1.2
--- /dev/null   Mon Aug  2 04:30:00 2004
+++ php-src/tests/classes/destructor_visibility_002.phpt        Mon Aug  2 04:29:59 
2004
@@ -0,0 +1,24 @@
+--TEST--
+ZE2 Ensuring destructor visibility
+--SKIPIF--
+<?php if (version_compare(zend_version(), '2.0.0-dev', '<')) die('skip ZendEngine 2 
needed'); ?>
+--FILE--
+<?php
+
+class Base {
+       private function __destruct() {
+               echo __METHOD__ . "\n";
+       }
+}
+
+class Derived extends Base {
+}
+
+$obj = new Derived;
+
+?>
+===DONE===
+--EXPECTF--
+===DONE===
+
+Warning: Call to private Derived::__destruct() from context '' during shutdown 
ignored in Unknown on line %d
http://cvs.php.net/diff.php/php-src/tests/classes/destructor_visibility_003.phpt?r1=1.1&r2=1.2&ty=u
Index: php-src/tests/classes/destructor_visibility_003.phpt
diff -u /dev/null php-src/tests/classes/destructor_visibility_003.phpt:1.2
--- /dev/null   Mon Aug  2 04:30:00 2004
+++ php-src/tests/classes/destructor_visibility_003.phpt        Mon Aug  2 04:29:59 
2004
@@ -0,0 +1,28 @@
+--TEST--
+ZE2 Ensuring destructor visibility
+--SKIPIF--
+<?php if (version_compare(zend_version(), '2.0.0-dev', '<')) die('skip ZendEngine 2 
needed'); ?>
+--FILE--
+<?php
+
+class Base {
+       private function __destruct() {
+               echo __METHOD__ . "\n";
+       }
+}
+
+class Derived extends Base {
+       public function __destruct() {
+               echo __METHOD__ . "\n";
+       }
+}
+
+$obj = new Derived;
+
+unset($obj); // Derived::__destruct is being called not Base::__destruct
+
+?>
+===DONE===
+--EXPECTF--
+Derived::__destruct
+===DONE===

-- 
PHP CVS Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php

Reply via email to