/** * @group ZF-7909 */ public function testClassFromReflectionDiscardParentImplementedInterfaces() { $reflClass = new Reflection\ReflectionClass('\\ZendTest\\CodeGenerator\\PHP\\TestAsset\\NewClassWithInterface'); $codeGen = PHP\PHPClass::fromReflection($reflClass); $codeGen->setSourceDirty(true); $code = $codeGen->generate(); $expectedClassDef = 'class NewClassWithInterface extends ClassWithInterface implements ThreeInterface'; $this->assertContains($expectedClassDef, $code); }
/** * setClass() * * @param \Zend\CodeGenerator\PHP\PHPClass|array $class * @return \Zend\CodeGenerator\PHP\PHPFile */ public function setClass($class) { if (is_array($class)) { $class = new PHPClass($class); $className = $class->getName(); } elseif ($class instanceof PHPClass) { $className = $class->getName(); } else { throw new Exception('Expecting either an array or an instance of Zend_CodeGenerator_Php_Class'); } // @todo check for dup here $this->_classes[$className] = $class; return $this; }