/** * Mock a MetaModel. * * @param string $tableName The table name of the MetaModel to mock (optional, defaults to "mm_unittest"). * * @return IMetaModel */ protected function mockMetaModel($tableName = 'mm_unittest') { $metaModel = $this->getMock('MetaModels\\MetaModel', array('getTableName', 'getServiceContainer'), array(array())); $serviceContainer = new MetaModelsServiceContainer(); $serviceContainer->setDatabase(Database::getNewTestInstance())->setEventDispatcher(new EventDispatcher()); $metaModel->expects($this->any())->method('getTableName')->will($this->returnValue($tableName)); $metaModel->expects($this->any())->method('getServiceContainer')->will($this->returnValue($serviceContainer)); return $metaModel; }
/** * Mock a MetaModel instance. * * @return IMetaModel */ private function mockMetaModel() { $dataBase = Database::getNewTestInstance(); $serviceContainer = new MetaModelsServiceContainer(); $serviceContainer->setDatabase($dataBase); $metaModel = new MetaModel(array('id' => '1', 'sorting' => '1', 'tstamp' => '0', 'name' => 'MetaModel', 'tableName' => 'mm_test', 'mode' => '', 'translated' => '1', 'languages' => array('en' => array('isfallback' => '1'), 'de' => array('isfallback' => '')), 'varsupport' => '1')); $metaModel->setServiceContainer($serviceContainer); return $metaModel; }
/** * Test the booting in the frontend. * * @return void */ public function testBootBackend() { $dispatcher = $this->mockEventDispatcher(array(MetaModelsEvents::SUBSYSTEM_BOOT, MetaModelsEvents::SUBSYSTEM_BOOT_BACKEND)); $environment = \Contao\Environment::getInstance(); $container = new MetaModelsServiceContainer(); $container->setEventDispatcher($dispatcher); $environment::set('script', 'contao/main.php'); $boot = $this->getMock('MetaModels\\Helper\\SubSystemBoot', array('getMode', 'metaModelsTablesPresent')); $boot->expects($this->any())->method('getMode')->will($this->returnValue('BE')); $boot->expects($this->any())->method('metaModelsTablesPresent')->will($this->returnValue(true)); $class = new \ReflectionClass($boot); $getMode = $class->getMethod('getMode'); $getMode->setAccessible(true); /** @var SubSystemBoot $boot */ $this->assertEquals('BE', $getMode->invoke($boot)); $boot->boot(new \Pimple(array('environment' => $environment, 'metamodels-service-container' => $container))); }
/** * Mock a MetaModel. * * @param string $language The language. * * @param string $fallbackLanguage The fallback language. * * @param Database $database The database to use. * * @return \MetaModels\IMetaModel */ protected function mockMetaModel($language, $fallbackLanguage, $database) { $metaModel = $this->getMock('MetaModels\\MetaModel', array(), array(array())); $metaModel->expects($this->any())->method('getTableName')->will($this->returnValue('mm_unittest')); $metaModel->expects($this->any())->method('getActiveLanguage')->will($this->returnValue($language)); $metaModel->expects($this->any())->method('getFallbackLanguage')->will($this->returnValue($fallbackLanguage)); $serviceContainer = new MetaModelsServiceContainer(); $serviceContainer->setDatabase($database); $metaModel->method('getServiceContainer')->willReturn($serviceContainer); return $metaModel; }
/** * Mock a service container with the given database. * * @param \Contao\Database $database The contao database instance. * * @return IMetaModelsServiceContainer */ protected function mockServiceContainer($database) { $serviceContainer = new MetaModelsServiceContainer(); $serviceContainer->setDatabase($database); return $serviceContainer; }