155 lines
5.4 KiB
PHP
155 lines
5.4 KiB
PHP
|
<?php
|
||
|
/**
|
||
|
* Zend Framework
|
||
|
*
|
||
|
* LICENSE
|
||
|
*
|
||
|
* This source file is subject to the new BSD license that is bundled
|
||
|
* with this package in the file LICENSE.txt.
|
||
|
* It is also available through the world-wide-web at this URL:
|
||
|
* http://framework.zend.com/license/new-bsd
|
||
|
* If you did not receive a copy of the license and are unable to
|
||
|
* obtain it through the world-wide-web, please send an email
|
||
|
* to license@zend.com so we can send you a copy immediately.
|
||
|
*
|
||
|
* @category Zend
|
||
|
* @package Zend_Tool
|
||
|
* @subpackage UnitTests
|
||
|
* @copyright Copyright (c) 2005-2009 Zend Technologies USA Inc. (http://www.zend.com)
|
||
|
* @license http://framework.zend.com/license/new-bsd New BSD License
|
||
|
* @version $Id$
|
||
|
*/
|
||
|
|
||
|
/**
|
||
|
* @see TestHelper.php
|
||
|
*/
|
||
|
require_once dirname(__FILE__) . '/../../../TestHelper.php';
|
||
|
|
||
|
/**
|
||
|
* @see Zend_Tool_Framework_Registry
|
||
|
*/
|
||
|
require_once 'Zend/Tool/Framework/Registry.php';
|
||
|
|
||
|
/** Other Requirements */
|
||
|
require_once 'Zend/Tool/Framework/Action/Repository.php';
|
||
|
require_once 'Zend/Tool/Framework/Provider/Repository.php';
|
||
|
require_once 'Zend/Tool/Framework/Manifest/Repository.php';
|
||
|
require_once 'Zend/Tool/Framework/Client/Request.php';
|
||
|
require_once 'Zend/Tool/Framework/Client/Response.php';
|
||
|
require_once '_files/EmptyClient.php';
|
||
|
require_once '_files/EmptyLoader.php';
|
||
|
|
||
|
/**
|
||
|
* @category Zend
|
||
|
* @package Zend_Tool
|
||
|
* @subpackage UnitTests
|
||
|
* @copyright Copyright (c) 2005-2009 Zend Technologies USA Inc. (http://www.zend.com)
|
||
|
* @license http://framework.zend.com/license/new-bsd New BSD License
|
||
|
*
|
||
|
* @group Zend_Tool
|
||
|
* @group Zend_Tool_Framework
|
||
|
*/
|
||
|
class Zend_Tool_Framework_RegistryTest extends PHPUnit_Framework_TestCase
|
||
|
{
|
||
|
|
||
|
public function setup()
|
||
|
{
|
||
|
$this->_registry = new Zend_Tool_Framework_Registry();
|
||
|
}
|
||
|
|
||
|
public function teardown()
|
||
|
{
|
||
|
$this->_registry->reset();
|
||
|
}
|
||
|
|
||
|
public function testRegistryCanGetAndSetClient()
|
||
|
{
|
||
|
$this->assertNull($this->_registry->getClient());
|
||
|
$this->_registry->setClient($client = new Zend_Tool_Framework_EmptyClient());
|
||
|
$this->assertTrue($this->_registry->getClient() === $client);
|
||
|
}
|
||
|
|
||
|
public function testRegistryCanGetAndSetLoader()
|
||
|
{
|
||
|
$this->assertTrue($this->_registry->getLoader() instanceof Zend_Tool_Framework_Loader_Abstract);
|
||
|
$this->_registry->setLoader($loader = new Zend_Tool_Framework_EmptyLoader());
|
||
|
$this->assertTrue($this->_registry->getLoader() === $loader);
|
||
|
}
|
||
|
|
||
|
public function testRegistryCanGetAndSetActionRepository()
|
||
|
{
|
||
|
$this->assertTrue($this->_registry->getActionRepository() instanceof Zend_Tool_Framework_Action_Repository);
|
||
|
$this->_registry->setActionRepository($repo = new Zend_Tool_Framework_Action_Repository());
|
||
|
$this->assertTrue($this->_registry->getActionRepository() === $repo);
|
||
|
}
|
||
|
|
||
|
public function testRegistryCanGetAndSetProviderRepository()
|
||
|
{
|
||
|
$this->assertTrue($this->_registry->getProviderRepository() instanceof Zend_Tool_Framework_Provider_Repository);
|
||
|
$this->_registry->setProviderRepository($repo = new Zend_Tool_Framework_Provider_Repository());
|
||
|
$this->assertTrue($this->_registry->getProviderRepository() === $repo);
|
||
|
}
|
||
|
|
||
|
public function testRegistryCanGetAndSetManifestRepository()
|
||
|
{
|
||
|
$this->assertTrue($this->_registry->getManifestRepository() instanceof Zend_Tool_Framework_Manifest_Repository);
|
||
|
$this->_registry->setManifestRepository($repo = new Zend_Tool_Framework_Manifest_Repository());
|
||
|
$this->assertTrue($this->_registry->getManifestRepository() === $repo);
|
||
|
}
|
||
|
|
||
|
public function testRegistryCanGetAndSetRequest()
|
||
|
{
|
||
|
$this->assertTrue($this->_registry->getRequest() instanceof Zend_Tool_Framework_Client_Request);
|
||
|
$this->_registry->setRequest($req = new Zend_Tool_Framework_Client_Request());
|
||
|
$this->assertTrue($this->_registry->getRequest() === $req);
|
||
|
}
|
||
|
|
||
|
public function testRegistryCanGetAndSetResponse()
|
||
|
{
|
||
|
$this->assertTrue($this->_registry->getResponse() instanceof Zend_Tool_Framework_Client_Response);
|
||
|
$this->_registry->setResponse($resp = new Zend_Tool_Framework_Client_Response());
|
||
|
$this->assertTrue($this->_registry->getResponse() === $resp);
|
||
|
}
|
||
|
|
||
|
public function testMagicGetAndSetOfRegistryItems()
|
||
|
{
|
||
|
$this->assertTrue($this->_registry->request instanceof Zend_Tool_Framework_Client_Request);
|
||
|
$this->_registry->request = new Zend_Tool_Framework_Client_Request();
|
||
|
$this->assertTrue($this->_registry->request instanceof Zend_Tool_Framework_Client_Request);
|
||
|
}
|
||
|
|
||
|
/**
|
||
|
* @expectedException Zend_Tool_Framework_Exception
|
||
|
*/
|
||
|
public function testMagicGetThrowsExceptionOnNonExistentItem()
|
||
|
{
|
||
|
$foo = $this->_registry->foo;
|
||
|
}
|
||
|
|
||
|
/**
|
||
|
* @expectedException Zend_Tool_Framework_Exception
|
||
|
*/
|
||
|
public function testMagicSetThrowsExceptionOnNonExistentItem()
|
||
|
{
|
||
|
$this->_registry->foo = 'foo';
|
||
|
}
|
||
|
|
||
|
/**
|
||
|
* @expectedException Zend_Tool_Framework_Exception
|
||
|
*/
|
||
|
public function testIsObjectRegistryEnablableWillThrowExceptionsOnNonObject()
|
||
|
{
|
||
|
$this->_registry->isObjectRegistryEnablable('foo');
|
||
|
}
|
||
|
|
||
|
/**
|
||
|
* @expectedException Zend_Tool_Framework_Exception
|
||
|
*/
|
||
|
public function testEnableRegistryOnObjectWillThrowExceptionsOnNonObject()
|
||
|
{
|
||
|
$this->_registry->enableRegistryOnObject(new ArrayObject());
|
||
|
}
|
||
|
|
||
|
}
|
||
|
|