mirror of
https://github.com/coollabsio/coolify.git
synced 2026-11-12 15:53:46 -04:00
fix(profile): close the email change modal after verification
A merge (253e59e73) lost the close-email-change-modal dispatch.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Opus 5.5
parent
75976d9882
commit
9c6a8e4767
@@ -222,6 +222,7 @@ class Index extends Component
|
||||
$this->show_verification = false;
|
||||
|
||||
$this->dispatch('success', 'Email address updated successfully.');
|
||||
$this->dispatch('close-email-change-modal');
|
||||
auditLog('ui.user.email_changed', $this->auditContext());
|
||||
} else {
|
||||
$this->dispatch('error', 'Failed to update email address.');
|
||||
|
||||
@@ -0,0 +1,40 @@
|
||||
<?php
|
||||
|
||||
use App\Livewire\Profile\Index as ProfileIndex;
|
||||
use App\Models\User;
|
||||
use Illuminate\Foundation\Testing\RefreshDatabase;
|
||||
use Livewire\Livewire;
|
||||
|
||||
uses(RefreshDatabase::class);
|
||||
|
||||
beforeEach(function () {
|
||||
$this->user = User::factory()->create(['name' => 'Profile User', 'email' => 'old@example.com']);
|
||||
$this->user->forceFill([
|
||||
'pending_email' => 'new@example.com',
|
||||
'email_change_code' => '123456',
|
||||
'email_change_code_expires_at' => now()->addMinutes(10),
|
||||
])->save();
|
||||
|
||||
$this->actingAs($this->user);
|
||||
});
|
||||
|
||||
it('closes the email change modal after a successful verification', function () {
|
||||
Livewire::test(ProfileIndex::class)
|
||||
->set('email_verification_code', '123456')
|
||||
->call('verifyEmailChange')
|
||||
->assertDispatched('success', 'Email address updated successfully.')
|
||||
->assertDispatched('close-email-change-modal')
|
||||
->assertSet('show_verification', false);
|
||||
|
||||
expect($this->user->fresh()->email)->toBe('new@example.com');
|
||||
});
|
||||
|
||||
it('keeps the email change modal open when the verification code is wrong', function () {
|
||||
Livewire::test(ProfileIndex::class)
|
||||
->set('email_verification_code', '654321')
|
||||
->call('verifyEmailChange')
|
||||
->assertDispatched('error', 'Invalid or expired verification code.')
|
||||
->assertNotDispatched('close-email-change-modal');
|
||||
|
||||
expect($this->user->fresh()->email)->toBe('old@example.com');
|
||||
});
|
||||
Reference in New Issue
Block a user