public function setUp() { $updater = new LayoutUpdater(); $this->updater = $updater; $layout = new Layout(new BlockFactory(), $updater); $this->layout = $layout; $layout->addBlock('test-block', (new ViewModel())->setTemplate('widget1')); $renderer = new BlockRenderer(); $renderer->setResolver($this->getResolver()); $this->renderer = $renderer; $this->layoutManager = new LayoutManager($layout, $updater, $renderer); }
public function testIsAllowed() { $layout = new Layout($this->blockFactory, $this->updaterMock); $layout->getEventManager()->getSharedManager()->attach('ConLayout\\Layout\\Layout', 'isAllowed', function ($e) { $blockId = $e->getParam('block_id'); if ($blockId === 'widget.1') { return false; } return true; }); $layout->addBlock('mr.widget', new ViewModel()); $root = new ViewModel(); $layout->setRoot($root); $layout->load(); $this->assertCount(2, $root->getChildren()); }