Example #1
0
 public function testInterfaces()
 {
     $definition = new Definition('Class1');
     $definition->addInterface('\\ArrayAccess');
     $definition->addInterface('\\Countable');
     $this->assertSame(array('\\ArrayAccess', '\\Countable'), $definition->getInterfaces());
     $definition->setInterfaces($interfaces = array('\\ArrayObject', '\\InfiniteIterador'));
     $this->assertSame($interfaces, $definition->getInterfaces());
 }
Example #2
0
 public function create()
 {
     $definition = new Definition($this->className);
     $definition->setClass($this->nameSpace . '\\' . $this->className);
     $definition->setAbstract(true);
     $properties = $this->extractProperties();
     $definition->setProperties($properties);
     $methods = $this->extractMethods();
     $definition->setMethods($methods);
     $definition->addInterface('\\Serializable');
     $definition->addMethod($this->createSerialize());
     $definition->addMethod($this->createUnserialize());
     return $definition;
 }