app->make(\Spatie\Permission\PermissionRegistrar::class)->forgetCachedPermissions(); } public function test_users_table_exists_and_user_can_be_created(): void { $user = User::create([ 'name' => 'Test Admin', 'email' => 'admin@test.com', 'password' => bcrypt('password'), ]); $this->assertDatabaseHas('users', ['email' => 'admin@test.com']); } public function test_roles_seeder_creates_four_roles(): void { $this->artisan('db:seed', ['--class' => 'RolesAndAdminSeeder']); $this->assertDatabaseHas('roles', ['name' => 'administrator']); $this->assertDatabaseHas('roles', ['name' => 'pengurus_ibadah']); $this->assertDatabaseHas('roles', ['name' => 'petugas_pendataan']); $this->assertDatabaseHas('roles', ['name' => 'pemangku_kebijakan']); } public function test_roles_seeder_creates_default_admin(): void { $this->artisan('db:seed', ['--class' => 'RolesAndAdminSeeder']); $user = User::where('email', 'admin@webgis.local')->first(); $this->assertNotNull($user); $this->assertTrue($user->hasRole('administrator')); } }