sessionでflashをつけてリダイレクトしているが、きちんとリダイレクトされるかのテストコードを書く
controller側
public function testFormConfirm(Request $request){
if($request->has('name') & $request->name !== NULL){
session()->flash('flashmessage',$request->name. 'さん、登録完了');
} else {
session()->flash('flashmessage','エラー: 名前を入力してください');
}
return redirect('/admin/test/form');
}
test code
public function testExample()
{
// $this->visit('/admin/test/form')->see('名前');
$response = $this->post('/admin/test/form/confirm', [
'name' => 'hpscript'
]);
$response->assertRedirect('/admin/test/form');
}
$ vendor/bin/phpunit tests/Feature/AdminTest.php
PHPUnit 9.4.2 by Sebastian Bergmann and contributors.
. 1 / 1 (100%)
Time: 00:01.530, Memory: 34.00 MB
OK (1 test, 2 assertions)
なるほど、仕組みはわかってきた。keep goin.