*/ class TenantFactory extends Factory { public function configure(): static { return $this->afterCreating(function (Tenant $tenant): void { if ($tenant->workspace_id !== null) { return; } $workspace = Workspace::factory()->create(); $tenant->forceFill([ 'workspace_id' => (int) $workspace->getKey(), ])->save(); }); } /** * Define the model's default state. * * @return array */ public function definition(): array { return [ 'name' => fake()->company(), 'external_id' => fake()->uuid(), 'tenant_id' => fake()->uuid(), 'app_client_id' => fake()->uuid(), 'app_client_secret' => null, // Skip encryption in tests 'app_certificate_thumbprint' => null, 'app_status' => 'ok', 'app_notes' => null, 'status' => 'active', 'environment' => 'other', 'is_current' => false, 'metadata' => [], ]; } }