ldc-supportweb/database/factories/GitlabIssueFactory.php
2026-05-28 10:50:21 +02:00

47 lines
1.6 KiB
PHP

<?php
namespace Database\Factories;
use App\Models\GitlabIssue;
use Illuminate\Database\Eloquent\Factories\Factory;
/**
* Factory for generating GitlabIssue model instances with randomized data.
*
* @extends \Illuminate\Database\Eloquent\Factories\Factory<\App\Models\GitlabIssue>
*/
class GitlabIssueFactory extends Factory
{
/**
* Associated model.
*
* @var class-string<\App\Models\GitlabIssue>
*/
#[\Override]
protected $model = GitlabIssue::class;
/**
* Define the model's default state.
*
* @return array<string, mixed>
*/
public function definition(): array
{
$isClosed = fake()->boolean(25);
return [
"title" => fake()->unique()->words(3, true),
"url" => fake()->unique()->url(),
"estimate_time" => fake()->boolean(75) ? fake()->numberBetween(1, 32) * 900 : 0,
"spent_time" => fake()->boolean(75) ? fake()->numberBetween(1, 32) * 900 : 0,
"is_closed" => $isClosed,
"gitlab_id" => fake()->unique()->numberBetween(1, 1000),
"gitlab_iid" => fake()->numberBetween(1, 1000),
"milestone_iid" => fake()->boolean(75) ? fake()->numberBetween(1, 1000) : null,
"gitlab_project_id" => fake()->unique()->numberBetween(1, 1000),
"g_created_at" => fake()->date(),
"g_updated_at" => fake()->date(),
"g_closed_at" => $isClosed ? fake()->date() : null,
"g_due_date" => fake()->boolean(25) ? fake()->date() : null,
];
}
}