Laravel 5模拟PasswordBroker

时间:2015-05-16 15:03:10

标签: php unit-testing laravel laravel-5 mockery

来自样板PasswordController::postEmail()我试图模仿(使用Mockery)这部分:

// $this->password is an instance of PasswordBroker
$response = $this->passwords->sendResetLink($request->only('email'), function($m)
    {
        $m->subject($this->getEmailSubject());
    });

在我的测试用例中,我正在调用->shouldReceive('sendResetLink')->with($postData, ???)

由于这是一个闭包,我确定我必须传递一个闭包,并且还嘲笑$m->subject($this->getEmailSubject());但我在这个上面是空白的,因为我对TDD来说相对较新。

我可以获得一些指示吗?

1 个答案:

答案 0 :(得分:4)

->shouldReceive('sendResetLink')
->once()
->with($postData, \Mockery::type('Closure'));