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.