2020-11-03 17:18:31 +01:00
|
|
|
<?php
|
|
|
|
|
|
|
|
namespace Database\Factories;
|
|
|
|
|
|
|
|
use App\Models\Device;
|
|
|
|
use Illuminate\Database\Eloquent\Factories\Factory;
|
|
|
|
|
2021-07-26 16:00:34 +02:00
|
|
|
/** @extends Factory<Device> */
|
2020-11-03 17:18:31 +01:00
|
|
|
class DeviceFactory extends Factory
|
|
|
|
{
|
|
|
|
/**
|
|
|
|
* Define the model's default state.
|
|
|
|
*
|
|
|
|
* @return array
|
|
|
|
*/
|
2023-05-24 22:21:54 +02:00
|
|
|
public function definition(): array
|
2020-11-03 17:18:31 +01:00
|
|
|
{
|
|
|
|
return [
|
2022-09-01 19:31:25 +02:00
|
|
|
'hostname' => $this->faker->domainWord() . '-' . $this->faker->domainWord() . '-' . $this->faker->domainWord() . '.' . $this->faker->domainName(),
|
|
|
|
'ip' => $this->faker->randomElement([$this->faker->ipv4(), $this->faker->ipv6()]),
|
2020-11-03 17:18:31 +01:00
|
|
|
'type' => $this->faker->randomElement([
|
|
|
|
'appliance',
|
|
|
|
'camera',
|
|
|
|
'collaboration',
|
|
|
|
'encoder',
|
|
|
|
'environment',
|
|
|
|
'firewall',
|
|
|
|
'loadbalancer',
|
|
|
|
'management',
|
|
|
|
'network',
|
|
|
|
'power',
|
|
|
|
'printer',
|
|
|
|
'proxy',
|
|
|
|
'sensor',
|
|
|
|
'server',
|
|
|
|
'storage',
|
|
|
|
'timing',
|
|
|
|
'wireless',
|
|
|
|
'workstation',
|
|
|
|
]),
|
2022-11-05 14:43:54 -05:00
|
|
|
'sysDescr' => $this->faker->text(64),
|
2020-11-03 17:18:31 +01:00
|
|
|
'status' => $status = random_int(0, 1),
|
|
|
|
'status_reason' => $status == 0 ? $this->faker->randomElement(['snmp', 'icmp']) : '', // allow invalid states?
|
|
|
|
];
|
|
|
|
}
|
|
|
|
}
|