loaders = spl_autoload_functions(); if (!is_array($this->loaders)) { // spl_autoload_functions does not return empty array when no // autoloaders registered... $this->loaders = array(); } Zend_Loader_Autoloader::resetInstance(); $this->autoloader = Zend_Loader_Autoloader::getInstance(); $this->application = new Zend_Application('testing'); require_once dirname(__FILE__) . '/../_files/ZfAppBootstrap.php'; $this->bootstrap = new ZfAppBootstrap($this->application); } public function tearDown() { // Restore original autoloaders $loaders = spl_autoload_functions(); foreach ($loaders as $loader) { spl_autoload_unregister($loader); } foreach ($this->loaders as $loader) { spl_autoload_register($loader); } // Reset autoloader instance so it doesn't affect other tests Zend_Loader_Autoloader::resetInstance(); } public function testAdapterIsNullByDefault() { require_once 'Zend/Application/Resource/Db.php'; $resource = new Zend_Application_Resource_Db(); $this->assertNull($resource->getAdapter()); } public function testDbIsNullByDefault() { require_once 'Zend/Application/Resource/Db.php'; $resource = new Zend_Application_Resource_Db(); $this->assertNull($resource->getDbAdapter()); } public function testParamsAreEmptyByDefault() { require_once 'Zend/Application/Resource/Db.php'; $resource = new Zend_Application_Resource_Db(); $params = $resource->getParams(); $this->assertTrue(empty($params)); } public function testIsDefaultTableAdapter() { require_once 'Zend/Application/Resource/Db.php'; $resource = new Zend_Application_Resource_Db(); $this->assertTrue($resource->isDefaultTableAdapter()); } public function testPassingDatabaseConfigurationSetsObjectState() { require_once 'Zend/Application/Resource/Db.php'; $config = array( 'adapter' => 'Pdo_Sqlite', 'params' => array( 'dbname' => ':memory:', ), 'isDefaultTableAdapter' => false, ); $resource = new Zend_Application_Resource_Db($config); $this->assertFalse($resource->isDefaultTableAdapter()); $this->assertEquals($config['adapter'], $resource->getAdapter()); $this->assertEquals($config['params'], $resource->getParams()); } public function testInitShouldInitializeDbAdapter() { require_once 'Zend/Application/Resource/Db.php'; $config = array( 'adapter' => 'Pdo_Sqlite', 'params' => array( 'dbname' => ':memory:', ), 'isDefaultTableAdapter' => false, ); $resource = new Zend_Application_Resource_Db($config); $resource->init(); $db = $resource->getDbAdapter(); $this->assertTrue($db instanceof Zend_Db_Adapter_Pdo_Sqlite); } } if (PHPUnit_MAIN_METHOD == 'Zend_Application_Resource_DbTest::main') { Zend_Application_Resource_DbTest::main(); }