public function testSubnetHostsRange() { $cidr = new CIDR('2001:db8:85a3:8d3::7334/6'); $this->assertEquals(array('2000:0000:0000:0000:0000:0000:0000:0000', '23ff:ffff:ffff:ffff:ffff:ffff:ffff:ffff'), $cidr->getSubnetHostsRange()); $cidr = new CIDR('2d81:db8:85a3:8d3::7334/7'); $this->assertEquals(array('2c00:0000:0000:0000:0000:0000:0000:0000', '2dff:ffff:ffff:ffff:ffff:ffff:ffff:ffff'), $cidr->getSubnetHostsRange()); $cidr = new CIDR('2d81:db8:85a3:8d3::7334/19'); $this->assertEquals(array('2d81:0000:0000:0000:0000:0000:0000:0000', '2d81:1fff:ffff:ffff:ffff:ffff:ffff:ffff'), $cidr->getSubnetHostsRange()); $cidr = new CIDR('2d81:db8:85a3:8d3::7334/32'); $this->assertEquals(array('2d81:0db8:0000:0000:0000:0000:0000:0000', '2d81:0db8:ffff:ffff:ffff:ffff:ffff:ffff'), $cidr->getSubnetHostsRange()); $cidr = new CIDR('2d81:db8:85a3:8d3::7334/0'); $this->assertEquals(array('0000:0000:0000:0000:0000:0000:0000:0000', 'ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff'), $cidr->getSubnetHostsRange()); $cidr = new CIDR('2d81:db8:85a3:8d3::7334/128'); $this->assertEquals(array('2d81:0db8:85a3:08d3:0000:0000:0000:7334', '2d81:0db8:85a3:08d3:0000:0000:0000:7334'), $cidr->getSubnetHostsRange()); }