1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950 |
- <?php
- namespace Tests\Feature\Auth;
- use App\Models\User;
- use Illuminate\Foundation\Testing\RefreshDatabase;
- use Illuminate\Support\Facades\Hash;
- use Livewire\Volt\Volt;
- use Tests\TestCase;
- class PasswordUpdateTest extends TestCase
- {
- use RefreshDatabase;
- public function test_password_can_be_updated(): void
- {
- $user = User::factory()->create();
- $this->actingAs($user);
- $component = Volt::test('profile.update-password-form')
- ->set('current_password', 'password')
- ->set('password', 'new-password')
- ->set('password_confirmation', 'new-password')
- ->call('updatePassword');
- $component
- ->assertHasNoErrors()
- ->assertNoRedirect();
- $this->assertTrue(Hash::check('new-password', $user->refresh()->password));
- }
- public function test_correct_password_must_be_provided_to_update_password(): void
- {
- $user = User::factory()->create();
- $this->actingAs($user);
- $component = Volt::test('profile.update-password-form')
- ->set('current_password', 'wrong-password')
- ->set('password', 'new-password')
- ->set('password_confirmation', 'new-password')
- ->call('updatePassword');
- $component
- ->assertHasErrors(['current_password'])
- ->assertNoRedirect();
- }
- }
|