feat: add user creation functions with permission handling for authorized and unauthorized users

This commit is contained in:
Yoga Pangestu 2026-04-29 22:09:59 +07:00
parent 90946babeb
commit 87a0554c2b

View File

@ -1,6 +1,8 @@
<?php <?php
use App\Models\User;
use Illuminate\Foundation\Testing\RefreshDatabase; use Illuminate\Foundation\Testing\RefreshDatabase;
use Spatie\Permission\Models\Permission;
use Tests\TestCase; use Tests\TestCase;
/* /*
@ -15,7 +17,7 @@
*/ */
pest()->extend(TestCase::class) pest()->extend(TestCase::class)
// ->use(RefreshDatabase::class) ->use(RefreshDatabase::class)
->in('Feature'); ->in('Feature');
/* /*
@ -44,7 +46,26 @@
| |
*/ */
function something() /**
* Create a user with specific permissions.
*/
function createAuthorizedUser(array $permissions = []): User
{ {
// .. $user = User::factory()->create();
foreach ($permissions as $permission) {
Permission::findOrCreate($permission);
}
$user->givePermissionTo($permissions);
return $user;
}
/**
* Create a user without permissions.
*/
function createUnauthorizedUser(): User
{
return User::factory()->create();
} }