私はKohana内のPHPUnitテストに精通しています。現時点では、自分のコードでRequest :: current() - >リダイレクトの呼び出しに問題があるようです。PHPUnitとKohanaリクエストオブジェクト
たとえば、ログイン機能をテストしようとしています。ユーザーが正常にログインすると、上記のリダイレクト・ラインを使用してホームページにリダイレクトされます。問題は、その行がそこにあるときにテストが停止して結果を返すことがないということです。ここで
は現時点で書かれているどのように私のテストで:
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
何をしています?
ありがとうございました!それは確かに問題でした。今の魅力のように動作します! :) – Emilie
実際には、リダイレクトが正しく自分のアプリケーションで発生するために、私は次のリダイレクトラインを使用しなければなりませんでした: $ this-> response-> headers( "Location"、URL :: site(NULL、TRUE) ); – Emilie
あなたの提案を含めるために私の答えを修正しました。 – gspatel