diff options
| author | Johannes Schlüter <johannes@php.net> | 2010-05-30 01:00:45 +0000 |
|---|---|---|
| committer | Johannes Schlüter <johannes@php.net> | 2010-05-30 01:00:45 +0000 |
| commit | 4158f7e1221ef5b69e8ba0aadd547a6ee2baa827 (patch) | |
| tree | 3f97bc78d8b4af792271cf4e152d1ebfad951ba7 /ext/reflection/tests/traits004.phpt | |
| parent | 2d63683ec3effbddd1a4a6ed5234822a58455198 (diff) | |
| download | php-git-4158f7e1221ef5b69e8ba0aadd547a6ee2baa827.tar.gz | |
- More trait reflection work
#- I'm not happy about ReflectionClass::getTraitAliases, yet
Diffstat (limited to 'ext/reflection/tests/traits004.phpt')
| -rw-r--r-- | ext/reflection/tests/traits004.phpt | 58 |
1 files changed, 58 insertions, 0 deletions
diff --git a/ext/reflection/tests/traits004.phpt b/ext/reflection/tests/traits004.phpt new file mode 100644 index 0000000000..c9367c1f48 --- /dev/null +++ b/ext/reflection/tests/traits004.phpt @@ -0,0 +1,58 @@ +--TEST-- +ReflectionClass::getTraits() and ReflectionClass::getTraitNames +--FILE-- +<?php +trait T1 { } +trait T2 { } + +class C1 { } +class C2 { use T1; } +class C3 { use T1; use T2; } + +for ($c = "C1"; $c <= "C3"; $c++) { + echo "class $c:\n"; + $r = new ReflectionClass($c); + var_dump($r->getTraitNames()); + var_dump($r->getTraits()); + echo "\n"; +} +--EXPECT-- +class C1: +array(0) { +} +array(0) { +} + +class C2: +array(1) { + [0]=> + string(2) "T1" +} +array(1) { + ["T1"]=> + &object(ReflectionClass)#1 (1) { + ["name"]=> + string(2) "T1" + } +} + +class C3: +array(2) { + [0]=> + string(2) "T1" + [1]=> + string(2) "T2" +} +array(2) { + ["T1"]=> + &object(ReflectionClass)#2 (1) { + ["name"]=> + string(2) "T1" + } + ["T2"]=> + &object(ReflectionClass)#3 (1) { + ["name"]=> + string(2) "T2" + } +} + |
