update tests for the user email verification

This commit is contained in:
Milos Holba
2021-05-22 16:01:25 +02:00
parent fd7a23225c
commit a7e26cb61f
5 changed files with 18 additions and 7 deletions

View File

@@ -178,6 +178,7 @@ class UserController extends Controller
'role' => $request->role,
'email' => $request->email,
'password' => bcrypt($request->password),
'email_verified_at' => now(),
]);
UserSettings::unguard();

View File

@@ -404,6 +404,7 @@ class SetupWizardController extends Controller
'role' => 'admin',
'email' => $request->email,
'password' => bcrypt($request->password),
'email_verified_at' => now(),
]);
$user

View File

@@ -54,6 +54,10 @@ class AuthTest extends TestCase
'name' => 'registration',
'value' => 1,
],
[
'name' => 'user_verification',
'value' => 1,
]
])->each(function ($setting) {
Setting::create([
'name' => $setting['name'],
@@ -70,6 +74,7 @@ class AuthTest extends TestCase
$this->assertDatabaseHas('users', [
'email' => 'john@doe.com',
'email_verified_at' => null,
]);
$this->assertDatabaseHas('user_settings', [

View File

@@ -266,7 +266,6 @@ class UserAccountTest extends TestCase
*/
public function it_user_email_verify()
{
// TODO:make request with signature
$user = User::factory(User::class)
->create([
'email_verified_at' => null
@@ -278,9 +277,11 @@ class UserAccountTest extends TestCase
['id' => $user->id, 'hash' => sha1($user->email)]
);
$this->getJson($verificationUrl);
$response = $this->getJson($verificationUrl);
$this->assertNotNull($user->email_verified_at);
$response->assertRedirect('sign-in');
$this->assertNotNull(User::find($user->id)->get('email_verified_at'));
}
/**
@@ -294,10 +295,10 @@ class UserAccountTest extends TestCase
->create([
'email_verified_at' => null
]);
Sanctum::actingAs($user);
$this->postJson('/api/user/email/resend/verify')
$this->postJson('/api/user/email/resend/verify', [
'email' => $user->email,
])
->assertStatus(200);
Notification::assertTimesSent(1, VerifyEmail::class);

View File

@@ -308,6 +308,9 @@ class AdminTest extends TestCase
'email' => 'john@doe.com'
]);
$this->assertNotNull(User::whereEmail('john@doe.com')
->get('email_verified_at'));
$this->assertDatabaseHas('user_settings', [
'name' => 'John Doe'
]);