我正在尝试熟悉 Kohana 中的 PHPUnit 测试。目前,我的代码中的 Request::current()->redirect 调用似乎存在问题。
例如,我正在尝试测试登录功能。一旦我们的用户成功登录,我们使用上面的请求重定向行将其重定向到其主页。问题是当那条线在那里时,测试似乎停在那里并且永远不会返回结果。
这是我目前的测试编写方式:
class SampleTest extends Kohana_UnitTest_TestCase
{
protected $session;
public function setUp() {
parent::setUp();
$this->session = Session::instance();
}
public function testLogin()
{
$request = new Request('/login');
$request->method(HTTP_Request::POST)
->post(array('username' => 'username', 'password' => 'password'));
$request->execute();
$this->assertEquals($this->session->get('username'), 'password');
}
}
如果我在登录控制器中注释掉以下行,一切正常:
Request::current()->redirect(); //redirect to home
我究竟做错了什么?