public function testSetLayout() { $layout = new ViewModel(); $view = new View(); $view->setLayout($layout); $this->assertSame($layout, $view->getLayout()); }
public function testInvokeDoesNothingIfModuleIsAlreadySpecifiedInViewModel() { $modules = new Modules(); $module = $this->getMock(AbstractModule::CLASS); $modules->set(__NAMESPACE__, $module); $view = new View(); $layout = $view->getLayout(); $layout->setModule('Foo'); $listener = new InjectModuleListener(); $listener->setModules($modules); $listener->setView($view); $event = new SystemEvent(); $model = new ViewModel(); $model->setModule('Bar'); $controller = new FakeController(); $event->setContext($controller); $event->setResult(SystemEvent::DISPATCH, $model); $listener($event); $this->assertSame('Foo', $layout->getModule()); $this->assertSame('Bar', $model->getModule()); }