Пример #1
0
 public function testIfWillExportProperly()
 {
     $comp = new CompoundComponent();
     $comp->scalar = 'one';
     $foo = new FooSubComponent();
     $foo->blah = 'new';
     $bar = new BarSubComponent();
     $bar->name = 'Tequila';
     $comp->foo = $foo;
     $comp->bar = $bar;
     $di = new EmbeDi();
     $exported = $di->export($comp);
     $this->assertSame(CompoundComponent::class, $exported[$di->classField]);
     $this->assertSame($comp->scalar, $exported['scalar']);
     $this->assertSame(FooSubComponent::class, $exported['foo'][$di->classField]);
     $this->assertSame($foo->blah, $exported['foo']['blah']);
     $this->assertSame(BarSubComponent::class, $exported['bar'][$di->classField]);
     $this->assertSame($bar->name, $exported['bar']['name']);
 }