示例#1
0
 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);
 }
示例#5
0
 /**
  * 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);");
     }
 }