def test_beginning_of_octet(self): self.assertEqual(utilities.cidr_to_ansible('192.168.1.1/17'), '192.168.[0:127].[0:255]')
def test_end_of_octet(self): self.assertEqual(utilities.cidr_to_ansible('192.168.1.1/23'), '192.168.[0:1].[0:255]')
def test_last_octet(self): self.assertEqual(utilities.cidr_to_ansible('1.2.3.4/30'), '1.2.3.[4:7]')
def test_octet_boundary(self): self.assertEqual(utilities.cidr_to_ansible('1.2.3.4/16'), '1.2.[0:255].[0:255]')
def test_exact_ip(self): self.assertEqual(utilities.cidr_to_ansible('1.2.3.4/32'), '1.2.3.4')
def test_first_octet(self): self.assertEqual(utilities.cidr_to_ansible('15.2.3.4/6'), '[12:15].[0:255].[0:255].[0:255]')
def test_no_prefix(self): self.assertEqual(utilities.cidr_to_ansible('1.2.3.4/0'), '[0:255].[0:255].[0:255].[0:255]')
def test_prefix_out_of_range(self): with self.assertRaises(SystemExit): utilities.cidr_to_ansible('1.2.3.4/33')
def test_octet_out_of_range(self): with self.assertRaises(SystemExit): utilities.cidr_to_ansible('1.2.3.256/12')
def test_extra_dots(self): with self.assertRaises(SystemExit): utilities.cidr_to_ansible('1.2..3.4/26')
def test_wrong_format(self): with self.assertRaises(utilities.NotCIDRException): utilities.cidr_to_ansible('www.redhat.com')