首页 > 解决方案 > Laravel 8:从TestCase,如何将路由的数据提供给控制器的方法?

问题描述

我有一个ExampleTest extends PHPUnit\Framework\TestCase包含测试的类,由于 HTTP GET 方法,该测试必须调用控制器函数。下面的代码显示了测试中的 GET:

/**
 * @dataProvider provideTakePlaceData
 */
public function takePlace($project, $pro)
{
    $response = $this->action('get', 'ControllerUserProject@takePlace');
    $this->assertSame($project->getStatus(), Projet::STATE_TO_BE_REPLIED);
}

我的控制器ControllerUserProject确实包含方法takePlace

class ControllerUserProject extends App\Http\Controllers\Controller
{
    public function takePlace(Request $request, $project_id, $pro_id)
    {
        
    }
}

我的问题是:在 Laravel 8 的官方文档中,我没有找到关于$this->action我在测试函数中使用的函数的任何信息:我怎样才能通过$project_id, $pro_id控制器函数所需的函数?

标签: laravel

解决方案


推荐阅读