*/ class TaskFactory extends Factory { /** * Define the model's default state. * * @return array */ public function definition(): array { return [ 'name' => $this->faker->word(), 'project_id' => Project::factory(), 'organization_id' => Organization::factory(), 'done_at' => null, 'estimated_time' => null, ]; } public function forProject(Project $project): self { return $this->state(fn (array $attributes) => [ 'project_id' => $project->getKey(), ]); } public function isDone(): self { return $this->state(fn (array $attributes) => [ 'done_at' => $this->faker->dateTime('now', 'UTC'), ]); } public function forOrganization(Organization $organization): self { return $this->state(fn (array $attributes) => [ 'organization_id' => $organization->getKey(), ]); } }