使用Laravel 5.1在PhpUnit中请求

时间:2015-11-18 23:50:26

标签: unit-testing laravel-5.1

我正在测试我的Rest API。

我想将参数传递给我的请求。

这是在我的控制器中,我有:

public function index(Request $request)
{
     $abuse = Abuse::where('bombId', $request->input('bombId'))->get();
}

与PhpUnit有关,我永远无法模拟bombId参数......

这是我的代码:

 $data['bombId'] = 25; // I also tried $bombId = 25;
 $this->get('api/v1/abuse', $data])
           ->seeJson(['total' => 11]);
 $this->assertResponseStatus(200);

编辑:

当我使用时:

$this->call('GET','api/v1/abuse', $credentials);

帕拉姆被传递,但我不能再使用SeeJson方法:(

任何想法?

1 个答案:

答案 0 :(得分:0)

我找到了Jeffrey Way:

的答案
    $response = $this->call('GET', 'api/v1/abuse', $credentials);
    $data = $this->parseJson($response);
    $this->assertIsJson($data);
    $this->assertEquals(11, $data->total);