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 * |