public function testQualifiedName() { $class = new PhpClass(); $this->assertNull($class->getName()); $class = new PhpClass('foo'); $this->assertEquals('foo', $class->getName()); $this->assertEquals('foo', $class->getQualifiedName()); $this->assertSame($class, $class->setName('bar')); $this->assertEquals('bar', $class->getName()); $class->setQualifiedName('\\full\\qualified\\Name'); $this->assertEquals('full\\qualified', $class->getNamespace()); $this->assertEquals('Name', $class->getName()); $this->assertEquals('full\\qualified\\Name', $class->getQualifiedName()); $class->setNamespace('a\\b'); $this->assertEquals('a\\b', $class->getNamespace()); $this->assertEquals('a\\b\\Name', $class->getQualifiedName()); }
private function buildSignature(PhpClass $model) { if ($model->isAbstract()) { $this->writer->write('abstract '); } if ($model->isFinal()) { $this->writer->write('final '); } $this->writer->write('class '); $this->writer->write($model->getName()); if ($parentClassName = $model->getParentClassName()) { $this->writer->write(' extends ' . $parentClassName); } if ($model->hasInterfaces()) { $this->writer->write(' implements '); $this->writer->write(implode(', ', $model->getInterfaces()->toArray())); } }