public function setupDatabase() { $config = new Zend_Config_Ini(APPLICATION_PATH . '/configs/application.ini', 'testing'); $db = Zend_Db::factory($config->resources->db->adapter, $config->resources->db->params); $connection = new Zend_Test_PHPUnit_Db_Connection($db, 'database_schema_name'); $databaseTester = new Zend_Test_PHPUnit_Db_SimpleTester($connection); $databaseFixture = new PHPUnit_Extensions_Database_DataSet_FlatXmlDataSet(APPLICATION_PATH . '/../tests/application/models/dataset.xml'); $this->_preInit($db); $db->query("SET FOREIGN_KEY_CHECKS=0"); $databaseTester->setupDatabase($databaseFixture); $db->query("SET FOREIGN_KEY_CHECKS=1"); }
protected function setupDatabase() { $db = $this->bootstrap->getBootstrap()->getResource('db'); $connection = new Zend_Test_PHPUnit_Db_Connection($db, ''); $databaseTester = new Zend_Test_PHPUnit_Db_SimpleTester($connection); $databaseTester->setupDatabase($this->getDataSet()); if ($this->truncateFixturesWhenTearDown) { $databaseTester->setTearDownOperation(new Zend_Test_PHPUnit_Db_Operation_Truncate()); // truncate database when call teardown } $this->databaseTester = $databaseTester; }
protected function setupDatabase() { $db = $this->bootstrap->getBootstrap()->getResource('db'); if (empty($db)) { throw new RuntimeException(sprintf("Please setting resources.db for section [%s] in file %s", APPLICATION_ENV, realpath(APPLICATION_PATH . "/configs/application.ini"))); } $connection = new Zend_Test_PHPUnit_Db_Connection($db, ''); $databaseTester = new Zend_Test_PHPUnit_Db_SimpleTester($connection); $databaseTester->setupDatabase($this->getDataSet()); if ($this->truncateFixturesWhenTearDown) { $databaseTester->setTearDownOperation(new Zend_Test_PHPUnit_Db_Operation_Truncate()); // truncate database when call teardown } $this->databaseTester = $databaseTester; }
/** * * Loads the SQL fixtures from array * * @param array $dataSetsAsArray */ protected function loadSqlFixtureFromArray(array $dataSetsAsArray) { $databaseFixture = new ArrayDataSet($dataSetsAsArray); $connection = new \Zend_Test_PHPUnit_Db_Connection($this->getDbAdapter(), 'test_db'); $databaseTester = new \Zend_Test_PHPUnit_Db_SimpleTester($connection); $databaseTester->setSetUpOperation(new DbOperationInsert()); $databaseTester->setupDatabase($databaseFixture); }
/** * Setup database using XML files. * * @param string|array $files * @param null|string $module */ public function setupDatabase($files, $module = null) { $db = Zend_Registry::get('dbAdapter'); $configDatabase = Zend_Registry::get('configDatabase'); $connection = new Zend_Test_PHPUnit_Db_Connection($db, $configDatabase->database->params->dbname); $databaseTester = new Zend_Test_PHPUnit_Db_SimpleTester($connection); if (is_array($files)) { foreach ($files as $f) { $path = BASE_PATH . '/core/tests/databaseDataset/' . $f . '.xml'; if (isset($module)) { $path = BASE_PATH . '/modules/' . $module . '/tests/databaseDataset/' . $f . '.xml'; } $databaseFixture = new PHPUnit_Extensions_Database_DataSet_FlatXmlDataSet($path); $databaseTester->setupDatabase($databaseFixture); } } else { $path = BASE_PATH . '/core/tests/databaseDataset/' . $files . '.xml'; if (isset($module)) { $path = BASE_PATH . '/modules/' . $module . '/tests/databaseDataset/' . $files . '.xml'; } $databaseFixture = new PHPUnit_Extensions_Database_DataSet_FlatXmlDataSet($path); $databaseTester->setupDatabase($databaseFixture); } if ($configDatabase->database->adapter == 'PDO_PGSQL') { $db->query("SELECT setval('assetstore_assetstore_id_seq', (SELECT MAX(assetstore_id) FROM assetstore)+1);"); $db->query("SELECT setval('bitstream_bitstream_id_seq', (SELECT MAX(bitstream_id) FROM bitstream)+1);"); $db->query("SELECT setval('feed_feed_id_seq', (SELECT MAX(feed_id) FROM feed)+1);"); $db->query("SELECT setval('user_user_id_seq', (SELECT MAX(user_id) FROM \"user\")+1);"); $db->query("SELECT setval('folder_folder_id_seq', (SELECT MAX(folder_id) FROM folder)+1);"); $db->query("SELECT setval('item_item_id_seq', (SELECT MAX(item_id) FROM item)+1);"); $db->query("SELECT setval('itemrevision_itemrevision_id_seq', (SELECT MAX(itemrevision_id) FROM itemrevision)+1);"); $db->query("SELECT setval('folder_folder_id_seq', (SELECT MAX(folder_id) FROM folder)+1);"); $db->query("SELECT setval('bitstream_bitstream_id_seq', (SELECT MAX(bitstream_id) FROM bitstream)+1);"); $db->query("SELECT setval('license_license_id_seq', (SELECT MAX(license_id) FROM license)+1);"); $db->query("SELECT setval('metadata_metadata_id_seq', (SELECT MAX(metadata_id) FROM metadata)+1);"); $db->query("SELECT setval('setting_setting_id_seq', (SELECT MAX(setting_id) FROM setting)+1);"); $db->query("SELECT setval('user_user_id_seq', (SELECT MAX(user_id) FROM \"user\")+1);"); } }