public function testMailerIsCalledWithProperViewTokenAndCallback()
{
unset($_SERVER['__verification.verify.test']);
$broker = $this->getBroker($mocks = $this->getMocks());
$callback = function ($message, $user) {
$_SERVER['__verification.verify.test'] = true;
};
$user = m::mock('Krucas\\LaravelUserEmailVerification\\Contracts\\RequiresEmailVerification');
$mocks['mailer']->shouldReceive('send')->once()->with('verifyAccountView', ['token' => 'token', 'user' => $user], m::type('Closure'))->andReturnUsing(function ($view, $data, $callback) {
return $callback;
});
$user->shouldReceive('getEmailForVerification')->once()->andReturn('email');
$message = m::mock('StdClass');
$message->shouldReceive('to')->once()->with('email');
$result = $broker->emailVerificationLink($user, 'token', $callback);
call_user_func($result, $message);
$this->assertTrue($_SERVER['__verification.verify.test']);
}