Stabilize discovery workflow
This commit is contained in:
@@ -0,0 +1,34 @@
|
||||
<?php
|
||||
|
||||
declare(strict_types=1);
|
||||
|
||||
namespace Domovoy\Tests\Controllers;
|
||||
|
||||
use Domovoy\Controllers\NetworkRangeController;
|
||||
use Domovoy\Repositories\NetworkRangeRepository;
|
||||
use PHPUnit\Framework\TestCase;
|
||||
|
||||
final class NetworkRangeControllerTest extends TestCase
|
||||
{
|
||||
public function testPrivateIpv4RangesAreAllowedAndPublicRangesAreRejected(): void
|
||||
{
|
||||
$controller = new NetworkRangeController(new NoopNetworkRangeRepository());
|
||||
$method = new \ReflectionMethod(NetworkRangeController::class, 'isValidCidr');
|
||||
$method->setAccessible(true);
|
||||
|
||||
self::assertTrue($method->invoke($controller, '10.0.0.0/8'));
|
||||
self::assertTrue($method->invoke($controller, '172.16.0.0/12'));
|
||||
self::assertTrue($method->invoke($controller, '192.168.1.1/32'));
|
||||
self::assertTrue($method->invoke($controller, '169.254.10.20/32'));
|
||||
self::assertTrue($method->invoke($controller, '127.0.0.1/32'));
|
||||
self::assertFalse($method->invoke($controller, '8.8.8.8/32'));
|
||||
self::assertFalse($method->invoke($controller, '1.1.1.0/24'));
|
||||
}
|
||||
}
|
||||
|
||||
final class NoopNetworkRangeRepository extends NetworkRangeRepository
|
||||
{
|
||||
public function __construct()
|
||||
{
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user