aboutsummaryrefslogtreecommitdiffstats
path: root/tests/lib/Security/Normalizer/IpAddressTest.php
diff options
context:
space:
mode:
Diffstat (limited to 'tests/lib/Security/Normalizer/IpAddressTest.php')
-rw-r--r--tests/lib/Security/Normalizer/IpAddressTest.php70
1 files changed, 70 insertions, 0 deletions
diff --git a/tests/lib/Security/Normalizer/IpAddressTest.php b/tests/lib/Security/Normalizer/IpAddressTest.php
new file mode 100644
index 00000000000..f7adfb4a0dd
--- /dev/null
+++ b/tests/lib/Security/Normalizer/IpAddressTest.php
@@ -0,0 +1,70 @@
+<?php
+
+declare(strict_types=1);
+
+/**
+ * SPDX-FileCopyrightText: 2017 Nextcloud GmbH and Nextcloud contributors
+ * SPDX-License-Identifier: AGPL-3.0-or-later
+ */
+
+namespace Test\Security\Normalizer;
+
+use OC\Security\Normalizer\IpAddress;
+use Test\TestCase;
+
+class IpAddressTest extends TestCase {
+ public static function subnetDataProvider(): array {
+ return [
+ [
+ '64.233.191.254',
+ '64.233.191.254/32',
+ ],
+ [
+ '192.168.0.123',
+ '192.168.0.123/32',
+ ],
+ [
+ '::ffff:192.168.0.123',
+ '192.168.0.123/32',
+ ],
+ [
+ '0:0:0:0:0:ffff:192.168.0.123',
+ '192.168.0.123/32',
+ ],
+ [
+ '0:0:0:0:0:ffff:c0a8:7b',
+ '192.168.0.123/32',
+ ],
+ [
+ '2001:0db8:0000:0000:0000:8a2e:0370:7334',
+ '2001:db8::/56',
+ ],
+ [
+ '2001:db8:3333:4444:5555:6666:7777:8888',
+ '2001:db8:3333:4400::/56',
+ ],
+ [
+ '::1234:5678',
+ '::/56',
+ ],
+ [
+ '[::1]',
+ '::/56',
+ ],
+ ];
+ }
+
+ /**
+ *
+ * @param string $input
+ * @param string $expected
+ */
+ #[\PHPUnit\Framework\Attributes\DataProvider('subnetDataProvider')]
+ public function testGetSubnet($input, $expected): void {
+ $this->assertSame($expected, (new IpAddress($input))->getSubnet());
+ }
+
+ public function testToString(): void {
+ $this->assertSame('127.0.0.1', (string)(new IpAddress('127.0.0.1')));
+ }
+}