parfum/database/factories/PointRecordFactory.php
Yoga Pangestu c4b90acf53 feat: membuat factory seluruh model
- menyesuaikan model jika ada yang salah seperti kurangnya trait SoftDeletes, casting yang salah, relasi yang kurang dan lainnya
- memperbaiki enum di migrasi
2025-12-09 08:25:07 +07:00

38 lines
971 B
PHP

<?php
namespace Database\Factories;
use App\Enums\PointRecordType;
use App\Models\PointRecord;
use App\Models\User;
use Illuminate\Database\Eloquent\Factories\Factory;
class PointRecordFactory extends Factory
{
protected $model = PointRecord::class;
public function definition(): array
{
$change = $this->faker->numberBetween(10, 500);
$isAddition = $this->faker->boolean();
return [
'user_id' => User::factory(),
'change' => $change,
'type' => PointRecordType::REWARD,
'description' => $this->faker->sentence(4),
'is_addition' => $isAddition,
];
}
public function reward(): Factory
{
return $this->state(fn () => ['type' => PointRecordType::REWARD, 'is_addition' => true]);
}
public function redemption(): Factory
{
return $this->state(fn () => ['type' => PointRecordType::REDEMPTION, 'is_addition' => false]);
}
}