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); Zend_Controller_Action_HelperBroker::resetHelpers(); } 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 testInitializationInitializesUserAgentObject() { $resource = new Zend_Application_Resource_Useragent(array()); $resource->setBootstrap($this->bootstrap); $resource->init(); $this->assertTrue($resource->getUserAgent() instanceof Zend_Http_UserAgent); } public function testOptionsPassedToResourceAreUsedToSetUserAgentState() { $options = array( 'storage' => array('adapter' => 'NonPersistent'), ); $resource = new Zend_Application_Resource_Useragent($options); $resource->setBootstrap($this->bootstrap); $resource->init(); $ua = $resource->getUserAgent(); $storage = $ua->getStorage(); $this->assertTrue($storage instanceof Zend_Http_UserAgent_Storage_NonPersistent); } public function testInjectsUserAgentIntoViewHelperWhenViewResourcePresent() { $this->bootstrap->registerPluginResource('view', array()); $resource = new Zend_Application_Resource_Useragent(array()); $resource->setBootstrap($this->bootstrap); $resource->init(); $view = $this->bootstrap->getResource('view'); $helper = $view->getHelper('userAgent'); $expected = $resource->getUserAgent(); $this->assertSame($expected, $helper->getUserAgent()); } } if (PHPUnit_MAIN_METHOD == 'Zend_Application_Resource_UseragentTest::main') { Zend_Application_Resource_UseragentTest::main(); }