1
0

IpinfoRecordAdapterTest.php 1.3 KB

12345678910111213141516171819202122232425262728293031323334353637
  1. <?php
  2. declare(strict_types=1);
  3. namespace App\Tests\Unit\Enrichment;
  4. use App\Infrastructure\Enrichment\IpinfoRecordAdapter;
  5. use PHPUnit\Framework\TestCase;
  6. final class IpinfoRecordAdapterTest extends TestCase
  7. {
  8. public function testCountryFlat(): void
  9. {
  10. $adapter = new IpinfoRecordAdapter();
  11. self::assertSame('GB', $adapter->extractCountryCode(['country_code' => 'GB']));
  12. self::assertSame('GB', $adapter->extractCountryCode(['country_code' => 'gb']));
  13. self::assertNull($adapter->extractCountryCode([]));
  14. self::assertNull($adapter->extractCountryCode(['country_code' => '']));
  15. }
  16. public function testAsnStripsAsPrefix(): void
  17. {
  18. $adapter = new IpinfoRecordAdapter();
  19. self::assertSame(13335, $adapter->extractAsn(['asn' => 'AS13335']));
  20. self::assertSame(13335, $adapter->extractAsn(['asn' => 'as13335']));
  21. self::assertSame(13335, $adapter->extractAsn(['asn' => '13335']));
  22. self::assertNull($adapter->extractAsn([]));
  23. self::assertNull($adapter->extractAsn(['asn' => 'NOTANUMBER']));
  24. }
  25. public function testAsName(): void
  26. {
  27. $adapter = new IpinfoRecordAdapter();
  28. self::assertSame('Cloudflare', $adapter->extractAsOrg(['as_name' => 'Cloudflare']));
  29. self::assertNull($adapter->extractAsOrg([]));
  30. }
  31. }