Annotation of embedaddon/php/ext/spl/tests/class_uses_basic2.phpt, revision 1.1

1.1     ! misho       1: --TEST--
        !             2: SPL: Test class_uses() function : basic 
        !             3: --FILE--
        !             4: <?php
        !             5: /* Prototype  : array class_uses(mixed what [, bool autoload ])
        !             6:  * Description: Return all traits used by a class
        !             7:  * Source code: ext/spl/php_spl.c
        !             8:  * Alias to functions: 
        !             9:  */
        !            10: 
        !            11: echo "*** Testing class_uses() : basic ***\n";
        !            12: 
        !            13: 
        !            14: trait foo { }
        !            15: class fooUser { use foo; }
        !            16: 
        !            17: trait bar { }
        !            18: class barUser { use bar; }
        !            19: 
        !            20: class foobarUser { use foo, bar; }
        !            21: 
        !            22: /** There is no semantics for traits in the inheritance chain.
        !            23:     Traits are flattend into a class, and that semantics is nothing
        !            24:     like a type, or interface, and thus, not propergated. */
        !            25: class fooViaBarUser extends barUser { use foo; }
        !            26: 
        !            27: class fooExtended extends fooUser {}
        !            28: 
        !            29: s_var_dump(class_uses(new foobarUser));
        !            30: s_var_dump(class_uses('foobarUser'));
        !            31: s_var_dump(class_uses(new fooViaBarUser));
        !            32: s_var_dump(class_uses('fooViaBarUser'));
        !            33: s_var_dump(class_uses(new fooExtended));
        !            34: s_var_dump(class_uses('fooExtended'));
        !            35: 
        !            36: 
        !            37: function s_var_dump($arr) {
        !            38:    krsort($arr);
        !            39:    var_dump($arr);
        !            40: }
        !            41: ?>
        !            42: ===DONE===
        !            43: --EXPECT--
        !            44: *** Testing class_uses() : basic ***
        !            45: array(2) {
        !            46:   ["foo"]=>
        !            47:   string(3) "foo"
        !            48:   ["bar"]=>
        !            49:   string(3) "bar"
        !            50: }
        !            51: array(2) {
        !            52:   ["foo"]=>
        !            53:   string(3) "foo"
        !            54:   ["bar"]=>
        !            55:   string(3) "bar"
        !            56: }
        !            57: array(1) {
        !            58:   ["foo"]=>
        !            59:   string(3) "foo"
        !            60: }
        !            61: array(1) {
        !            62:   ["foo"]=>
        !            63:   string(3) "foo"
        !            64: }
        !            65: array(0) {
        !            66: }
        !            67: array(0) {
        !            68: }
        !            69: ===DONE===

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>