[Laravel8.x] postした後にredirectするかのテストコード

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.