mirror of
https://github.com/librenms/librenms.git
synced 2024-10-07 16:52:45 +00:00
* Move `resources/lang` folder * Shift registered middleware * Remove `fruitcake/laravel-cors` dependency * Streamline `$commands` property * Upgrade to Flysystem 3.0 * Shift core files * Convert `optional()` to nullsafe operator * Remove unnecessary `$model` property * Convert route options to fluent methods Laravel 8 adopts the tuple syntax for controller actions. Since the old options array is incompatible with this syntax, Shift converted them to use modern, fluent methods. * Convert deprecated `$dates` property to `$casts` * Shift config files * Default config files In an effort to make upgrading the constantly changing config files easier, Shift defaulted them and merged your true customizations - where ENV variables may not be used. * Bump Laravel dependencies * Use `<env>` tags for configuration `<env>` tags have a lower precedence than system environment variables making it easier to overwrite PHPUnit configuration values in additional environments, such a CI. Review this blog post for more details on configuration precedence when testing Laravel: https://jasonmccreary.me/articles/laravel-testing-configuration-precedence/ * Fix error provider * Match new symfony syntax * Match upstream syntax * Fix route syntax * generate composer.lock * Sync back configs * routes * composer * Fix more flare * fix cors * sync lang * Apply fixes from StyleCI (#14517) Co-authored-by: StyleCI Bot <[email protected]> * bump larastan * update packages * wip * Temporarily lower phpstan level * Update phpstan.neon * wip * wip * wip * Apply fixes from StyleCI (#14592) Co-authored-by: StyleCI Bot <[email protected]> * test * Update CiHelper.php * Update test.yml * Update CiHelper.php * Update CiHelper.php * Apply fixes from StyleCI (#14616) Co-authored-by: StyleCI Bot <[email protected]> * test? * fix phpstan problems * dont run snmpsim on github ci * Fix whitespace * More whitespace * More whitespace ??? * I think the space broke it * fix the reset of the whitespace * hard code auth guard --------- Co-authored-by: Shift <[email protected]> Co-authored-by: StyleCI Bot <[email protected]> Co-authored-by: Tony Murray <[email protected]>
40 lines
1.1 KiB
PHP
40 lines
1.1 KiB
PHP
<?php
|
|
|
|
namespace Database\Factories;
|
|
|
|
use App\Models\Ipv4Address;
|
|
use App\Models\Ipv4Network;
|
|
use App\Models\Port;
|
|
use Illuminate\Database\Eloquent\Factories\Factory;
|
|
use LibreNMS\Util\IPv4;
|
|
|
|
/** @extends Factory<Ipv4Address> */
|
|
class Ipv4AddressFactory extends Factory
|
|
{
|
|
/**
|
|
* Define the model's default state.
|
|
*
|
|
* @return array
|
|
*/
|
|
public function definition()
|
|
{
|
|
$prefix = $this->faker->numberBetween(0, 32);
|
|
$ip = new IPv4($this->faker->ipv4() . '/' . $prefix);
|
|
|
|
return [
|
|
'ipv4_address' => $ip->uncompressed(),
|
|
'ipv4_prefixlen' => $prefix,
|
|
'port_id' => function () {
|
|
$port = Port::factory()->create(); /** @var Port $port */
|
|
|
|
return $port->port_id;
|
|
},
|
|
'ipv4_network_id' => function () use ($ip) {
|
|
$ipv4 = Ipv4Network::factory()->create(['ipv4_network' => $ip->getNetworkAddress() . '/' . $ip->cidr]); /** @var Ipv4Address $ipv4 */
|
|
|
|
return $ipv4->ipv4_network_id;
|
|
},
|
|
];
|
|
}
|
|
}
|