diff options
Diffstat (limited to 'Examples/test-suite/php/evil_diamond_prop_runme.php')
| -rw-r--r-- | Examples/test-suite/php/evil_diamond_prop_runme.php | 38 |
1 files changed, 38 insertions, 0 deletions
diff --git a/Examples/test-suite/php/evil_diamond_prop_runme.php b/Examples/test-suite/php/evil_diamond_prop_runme.php new file mode 100644 index 0000000..02d9944 --- /dev/null +++ b/Examples/test-suite/php/evil_diamond_prop_runme.php @@ -0,0 +1,38 @@ +<?php + +require "tests.php"; +require "evil_diamond_prop.php"; + +check::classes(array("evil_diamond_prop","foo","bar","baz","spam")); +check::functions("test"); +check::is_a("bar","foo"); +check::is_a("baz","foo"); +check::is_a("spam","foo"); +check::is_a("spam","bar"); +//No multiple inheritance introspection yet +//check::is_a("spam","baz"); + +$foo=new foo(); +check::is_a($foo,"foo"); +check::equal(1,$foo->_foo,"1==foo->_foo"); + +$bar=new bar(); +check::is_a($bar,"bar"); +check::equal(1,$bar->_foo,"1==bar->_foo"); +check::equal(2,$bar->_bar,"2==bar->_bar"); + +$baz=new baz(); +check::is_a($baz,"baz"); +check::equal(1,$baz->_foo,"1==baz->_foo"); +check::equal(3,$baz->_baz,"3==baz->_baz"); + +$spam=new spam(); +check::is_a($spam,"spam"); +check::equal(1,$spam->_foo,"1==spam->_foo"); +check::equal(2,$spam->_bar,"2==spam->_bar"); +// multiple inheritance not supported in PHP +check::equal(null,$spam->_baz,"null==spam->_baz"); +check::equal(4,$spam->_spam,"4==spam->_spam"); + +check::done(); +?> |
