web/lib/Zend/Test/PHPUnit/ControllerTestCase.php
changeset 807 877f952ae2bd
parent 207 621fa6caec0c
child 1230 68c69c656a2c
equal deleted inserted replaced
805:5e7a0fedabdf 807:877f952ae2bd
    12  * obtain it through the world-wide-web, please send an email
    12  * obtain it through the world-wide-web, please send an email
    13  * to license@zend.com so we can send you a copy immediately.
    13  * to license@zend.com so we can send you a copy immediately.
    14  *
    14  *
    15  * @category   Zend
    15  * @category   Zend
    16  * @package    Zend_Test
    16  * @package    Zend_Test
    17  * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
    17  * @copyright  Copyright (c) 2005-2012 Zend Technologies USA Inc. (http://www.zend.com)
    18  * @license    http://framework.zend.com/license/new-bsd     New BSD License
    18  * @license    http://framework.zend.com/license/new-bsd     New BSD License
    19  * @version    $Id: ControllerTestCase.php 22291 2010-05-25 15:52:09Z bradley.holt $
    19  * @version    $Id: ControllerTestCase.php 24593 2012-01-05 20:35:02Z matthew $
    20  */
    20  */
    21 
       
    22 /** @see PHPUnit_Framework_TestCase */
       
    23 require_once 'PHPUnit/Framework/TestCase.php';
       
    24 
    21 
    25 /** @see PHPUnit_Runner_Version */
    22 /** @see PHPUnit_Runner_Version */
    26 require_once 'PHPUnit/Runner/Version.php';
    23 require_once 'PHPUnit/Runner/Version.php';
       
    24 
       
    25 /**
       
    26  * Depending on version, include the proper PHPUnit support
       
    27  * @see PHPUnit_Autoload
       
    28  */
       
    29 require_once (version_compare(PHPUnit_Runner_Version::id(), '3.5.0', '>=')) ? 'PHPUnit/Autoload.php' : 'PHPUnit/Framework.php';
    27 
    30 
    28 /** @see Zend_Controller_Front */
    31 /** @see Zend_Controller_Front */
    29 require_once 'Zend/Controller/Front.php';
    32 require_once 'Zend/Controller/Front.php';
    30 
    33 
    31 /** @see Zend_Controller_Action_HelperBroker */
    34 /** @see Zend_Controller_Action_HelperBroker */
    45  *
    48  *
    46  * @uses       PHPUnit_Framework_TestCase
    49  * @uses       PHPUnit_Framework_TestCase
    47  * @category   Zend
    50  * @category   Zend
    48  * @package    Zend_Test
    51  * @package    Zend_Test
    49  * @subpackage PHPUnit
    52  * @subpackage PHPUnit
    50  * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
    53  * @copyright  Copyright (c) 2005-2012 Zend Technologies USA Inc. (http://www.zend.com)
    51  * @license    http://framework.zend.com/license/new-bsd     New BSD License
    54  * @license    http://framework.zend.com/license/new-bsd     New BSD License
    52  */
    55  */
    53 abstract class Zend_Test_PHPUnit_ControllerTestCase extends PHPUnit_Framework_TestCase
    56 abstract class Zend_Test_PHPUnit_ControllerTestCase extends PHPUnit_Framework_TestCase
    54 {
    57 {
    55     /**
    58     /**
  1115     }
  1118     }
  1116 
  1119 
  1117     /**
  1120     /**
  1118      * Retrieve test case request object
  1121      * Retrieve test case request object
  1119      *
  1122      *
  1120      * @return Zend_Controller_Request_Abstract
  1123      * @return Zend_Controller_Request_HttpTestCase
  1121      */
  1124      */
  1122     public function getRequest()
  1125     public function getRequest()
  1123     {
  1126     {
  1124         if (null === $this->_request) {
  1127         if (null === $this->_request) {
  1125             require_once 'Zend/Controller/Request/HttpTestCase.php';
  1128             require_once 'Zend/Controller/Request/HttpTestCase.php';
  1129     }
  1132     }
  1130 
  1133 
  1131     /**
  1134     /**
  1132      * Retrieve test case response object
  1135      * Retrieve test case response object
  1133      *
  1136      *
  1134      * @return Zend_Controller_Response_Abstract
  1137      * @return Zend_Controller_Response_HttpTestCase
  1135      */
  1138      */
  1136     public function getResponse()
  1139     public function getResponse()
  1137     {
  1140     {
  1138         if (null === $this->_response) {
  1141         if (null === $this->_response) {
  1139             require_once 'Zend/Controller/Response/HttpTestCase.php';
  1142             require_once 'Zend/Controller/Response/HttpTestCase.php';
  1152         if (null === $this->_query) {
  1155         if (null === $this->_query) {
  1153             require_once 'Zend/Dom/Query.php';
  1156             require_once 'Zend/Dom/Query.php';
  1154             $this->_query = new Zend_Dom_Query;
  1157             $this->_query = new Zend_Dom_Query;
  1155         }
  1158         }
  1156         return $this->_query;
  1159         return $this->_query;
       
  1160     }
       
  1161     
       
  1162     /**
       
  1163      * URL Helper
       
  1164      * 
       
  1165      * @param array $urlOptions
       
  1166      * @param string $name
       
  1167      * @param bool $reset
       
  1168      * @param bool $encode
       
  1169      */
       
  1170     public function url($urlOptions = array(), $name = null, $reset = false, $encode = true)
       
  1171     {
       
  1172         $frontController = $this->getFrontController();
       
  1173         $router = $frontController->getRouter();
       
  1174         if (!$router instanceof Zend_Controller_Router_Rewrite) {
       
  1175             throw new Exception('This url helper utility function only works when the router is of type Zend_Controller_Router_Rewrite');
       
  1176         }
       
  1177         if (count($router->getRoutes()) == 0) {
       
  1178             $router->addDefaultRoutes();
       
  1179         }
       
  1180         return $router->assemble($urlOptions, $name, $reset, $encode);
       
  1181     }
       
  1182     
       
  1183     public function urlizeOptions($urlOptions, $actionControllerModuleOnly = true)
       
  1184     {
       
  1185         $ccToDash = new Zend_Filter_Word_CamelCaseToDash();
       
  1186         foreach ($urlOptions as $n => $v) {
       
  1187             if (in_array($n, array('action', 'controller', 'module'))) {
       
  1188                 $urlOptions[$n] = $ccToDash->filter($v);
       
  1189             }
       
  1190         }
       
  1191         return $urlOptions;
  1157     }
  1192     }
  1158 
  1193 
  1159     /**
  1194     /**
  1160      * Increment assertion count
  1195      * Increment assertion count
  1161      *
  1196      *