If you are testing your app and use urlManager in your config, sometimes you will find a problem: you want to test your site independing from urlManager settings. in that way you need to extend your WebTestCase class by this method:
public function createUrl($route,$params=array()) {
$url = explode('phpunit',Yii::app()->createUrl($route,$params));
return $url[1];
}
and in your tests you can use next 'open' constructions:
$this->open($this->createUrl('user/view',array('id'=>$user->id)));
Another way
Or you may set in bootsrap:
$_SERVER['SERVER_NAME'] = 'site.com';
$_SERVER['PHP_SELF'] = '/index-test.php';
$_SERVER['SCRIPT_NAME'] = '/index-test.php';
$_SERVER['DOCUMENT_ROOT'] = dirname(FILE).'/../../';
$_SERVER['SCRIPT_FILENAME'] = $_SERVER['DOCUMENT_ROOT'] . '/index-test.php';
If you have any questions, please ask in the forum instead.
Signup or Login in order to comment.