Page MenuHomePhorge

PasswordResetEmailTest.php
No OneTemporary

Authored By
Unknown
Size
1 KB
Referenced Files
None
Subscribers
None

PasswordResetEmailTest.php

<?php
namespace Tests\Feature\Jobs;
use App\Jobs\PasswordResetEmail;
use App\Mail\PasswordReset;
use App\User;
use App\VerificationCode;
use Illuminate\Support\Facades\Mail;
use Tests\TestCase;
class PasswordResetEmailTest extends TestCase
{
private $code;
/**
* {@inheritDoc}
*
* @return void
*/
public function setUp(): void
{
parent::setUp();
$user = User::firstOrCreate([
'email' => 'PasswordReset@UserAccount.com'
]);
$this->code = new VerificationCode([
'mode' => 'password-reset',
]);
$user->verificationcodes()->save($this->code);
$user->setSettings(['external_email' => 'etx@email.com']);
}
/**
* {@inheritDoc}
*
* @return void
*/
public function tearDown(): void
{
$this->code->user->delete();
}
/**
* Test job handle
*
* @return void
*/
public function testPasswordResetEmailHandle()
{
Mail::fake();
// Assert that no jobs were pushed...
Mail::assertNothingSent();
$job = new PasswordResetEmail($this->code);
$job->handle();
// Assert the email sending job was pushed once
Mail::assertSent(PasswordReset::class, 1);
// Assert the mail was sent to the code's email
Mail::assertSent(PasswordReset::class, function ($mail) {
return $mail->hasTo($this->code->user->getSetting('external_email'));
});
}
}

File Metadata

Mime Type
text/x-php
Expires
Fri, Apr 24, 1:06 PM (1 w, 4 h ago)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
18869963
Default Alt Text
PasswordResetEmailTest.php (1 KB)

Event Timeline