diff --git a/src/Extensions/InternetExtension.php b/src/Extensions/InternetExtension.php index a743c8f..d3337c4 100644 --- a/src/Extensions/InternetExtension.php +++ b/src/Extensions/InternetExtension.php @@ -24,6 +24,11 @@ public function domain(): string return sprintf('%s.%s', $this->sdl(), $this->tld()); } + public function ip(): string + { + return $this->randomizer->getInt(0, 1) ? $this->ipv4() : $this->ipv6(); + } + public function ipv4(): string { return long2ip($this->randomizer->getInt(0, PHP_INT_MAX)); diff --git a/tests/Unit/Extensions/InternetExtensionTest.php b/tests/Unit/Extensions/InternetExtensionTest.php index 47fd8f5..4247cb7 100644 --- a/tests/Unit/Extensions/InternetExtensionTest.php +++ b/tests/Unit/Extensions/InternetExtensionTest.php @@ -60,6 +60,17 @@ public function testDomain(): void } } + public function testIp(): void + { + $faker = new Container(false); + + for ($i = 0; $i < 50; $i++) { + $result = $faker->ip(); + + $this->assertNotFalse(filter_var($result, FILTER_VALIDATE_IP, FILTER_FLAG_IPV4) || filter_var($result, FILTER_VALIDATE_IP, FILTER_FLAG_IPV6)); + } + } + public function testIpv4(): void { $faker = new Container(false);