*/ class RegistrationVerificationFactory extends Factory { protected $model = RegistrationVerification::class; /** * Define the model's default state. * * @return array */ public function definition(): array { return [ 'identifier' => fake()->unique()->safeEmail(), 'type' => 'email', 'code' => Hash::make('123456'), 'attempts' => 0, 'verified_at' => null, 'verification_token' => null, 'consumed_at' => null, 'expires_at' => now()->addMinutes(10), ]; } public function phone(): self { return $this->state(fn (array $attributes) => [ 'identifier' => fake()->numerify('+959#########'), 'type' => 'phone', ]); } public function verified(): self { return $this->state(fn (array $attributes) => [ 'verified_at' => now(), 'verification_token' => str()->random(64), ]); } public function expired(): self { return $this->state(fn (array $attributes) => [ 'expires_at' => now()->subMinute(), ]); } }