mirror of
https://gh.wpcy.net/https://github.com/fairpm/aspirecloud.git
synced 2026-06-20 02:22:28 +08:00
56 lines
1.6 KiB
PHP
56 lines
1.6 KiB
PHP
<?php
|
|
declare(strict_types=1);
|
|
|
|
namespace Database\Factories;
|
|
|
|
use App\Models\Package;
|
|
use App\Models\PackageRelease;
|
|
use Illuminate\Database\Eloquent\Factories\Factory;
|
|
|
|
/** @extends Factory<PackageRelease> */
|
|
class PackageReleaseFactory extends Factory
|
|
{
|
|
protected $model = PackageRelease::class;
|
|
|
|
public function definition(): array
|
|
{
|
|
return [
|
|
'id' => $this->faker->uuid(),
|
|
'version' => $this->faker->semver(),
|
|
'download_url' => $this->faker->url(),
|
|
'requires' => [
|
|
'env:php' => $this->faker->randomElement(['^8.0', '^8.1', '^8.2', '^8.3']),
|
|
],
|
|
'suggests' => [
|
|
'another-plugin' => $this->faker->semver(),
|
|
],
|
|
'provides' => [
|
|
'some-feature' => $this->faker->semver(),
|
|
],
|
|
'reported' => $this->faker->dateTimeBetween('-1 year', 'now'),
|
|
'artifacts' => [
|
|
'package' => [
|
|
[
|
|
'url' => $this->faker->url(),
|
|
'type' => 'zip',
|
|
],
|
|
],
|
|
],
|
|
];
|
|
}
|
|
|
|
public function typo3(): static
|
|
{
|
|
return $this->state(fn () => [
|
|
'requires' => [
|
|
'env:typo3' => $this->faker->randomElement([
|
|
'>=11.5.0 <=11.99.99',
|
|
'>=12.4.0 <=12.99.99',
|
|
'>=13.4.0 <=13.99.99',
|
|
'>=11.5.0 <=12.99.99',
|
|
]),
|
|
'env:php' => $this->faker->randomElement(['^8.1', '^8.2', '>=8.1']),
|
|
],
|
|
]);
|
|
}
|
|
}
|