create(); $admin->givePermissionTo(['create users', 'edit users']); return $admin; } private function company(): Company { return Company::create(['name' => 'ACME', 'estado' => 'activo', 'type' => 'constructor']); } public function test_creating_a_user_persists_the_selected_locale(): void { $admin = $this->admin(); $company = $this->company(); Livewire::actingAs($admin) ->test(UserForm::class) ->set('firstName', 'Ada') ->set('lastName', 'Lovelace') ->set('email', 'ada@example.com') ->set('companyId', $company->id) ->set('formRole', 'Tecnico') ->set('formPassword', 'Password123') ->set('locale', 'en') ->call('save'); $this->assertDatabaseHas('users', ['email' => 'ada@example.com', 'locale' => 'en']); } public function test_editing_a_user_loads_and_updates_the_locale(): void { $admin = $this->admin(); $company = $this->company(); $target = User::factory()->create([ 'locale' => 'es', 'company_id' => $company->id, 'first_name' => 'Bob', 'last_name' => 'Stone', ]); $target->assignRole('Tecnico'); Livewire::actingAs($admin) ->test(UserForm::class, ['user' => $target]) ->assertSet('locale', 'es') ->set('locale', 'en') ->call('save'); $this->assertEquals('en', $target->fresh()->locale); } }