forge/tests/Feature/User/DeleteAccountTest.php
2024-07-18 00:11:32 -04:00

32 lines
973 B
PHP
Executable File

<?php
use App\Models\User;
use Laravel\Jetstream\Features;
use Laravel\Jetstream\Http\Livewire\DeleteUserForm;
use Livewire\Livewire;
test('user accounts can be deleted', function () {
$this->actingAs($user = User::factory()->create());
Livewire::test(DeleteUserForm::class)
->set('password', 'password')
->call('deleteUser');
expect($user->fresh())->toBeNull();
})->skip(function () {
return ! Features::hasAccountDeletionFeatures();
}, 'Account deletion is not enabled.');
test('correct password must be provided before account can be deleted', function () {
$this->actingAs($user = User::factory()->create());
Livewire::test(DeleteUserForm::class)
->set('password', 'wrong-password')
->call('deleteUser')
->assertHasErrors(['password']);
expect($user->fresh())->not->toBeNull();
})->skip(function () {
return ! Features::hasAccountDeletionFeatures();
}, 'Account deletion is not enabled.');