Ejemplo n.º 1
0
    def setUp(self):
        super(TestSubnet, self).setUp()

        if TestSubnet.subnet_192_168_100 is None:
            TestSubnet.subnet_192_168_100 = "subnet-192168100"
            Subnet.delete({'name': TestSubnet.subnet_192_168_100})
            Subnet.create_minimal(TestSubnet.subnet_192_168_100)
Ejemplo n.º 2
0
    def test_positive_delete_1(self):
        """@Test: Check if Subnet can be deleted

        @Feature: Subnet - Delete

        @Assert: Subnet is deleted
        """
        for name in valid_data_list():
            with self.subTest(name):
                subnet = make_subnet({'name': name})
                Subnet.delete({'id': subnet['id']})
                with self.assertRaises(CLIReturnCodeError):
                    Subnet.info({'id': subnet['id']})
Ejemplo n.º 3
0
    def test_positive_delete_by_id(self):
        """Check if Subnet can be deleted

        @id: ad269df8-4bb2-46a5-9c82-010a80087408

        @Assert: Subnet is deleted
        """
        for name in valid_data_list():
            with self.subTest(name):
                subnet = make_subnet({"name": name})
                Subnet.delete({"id": subnet["id"]})
                with self.assertRaises(CLIReturnCodeError):
                    Subnet.info({"id": subnet["id"]})
Ejemplo n.º 4
0
    def test_positive_delete_by_id(self):
        """Check if Subnet can be deleted

        @id: ad269df8-4bb2-46a5-9c82-010a80087408

        @Assert: Subnet is deleted
        """
        for name in valid_data_list():
            with self.subTest(name):
                subnet = make_subnet({'name': name})
                Subnet.delete({'id': subnet['id']})
                with self.assertRaises(CLIReturnCodeError):
                    Subnet.info({'id': subnet['id']})
Ejemplo n.º 5
0
    def test_positive_delete_by_id(self):
        """Check if Subnet can be deleted

        @Feature: Subnet - Delete

        @Assert: Subnet is deleted
        """
        for name in valid_data_list():
            with self.subTest(name):
                subnet = make_subnet({'name': name})
                Subnet.delete({'id': subnet['id']})
                with self.assertRaises(CLIReturnCodeError):
                    Subnet.info({'id': subnet['id']})
Ejemplo n.º 6
0
    def test_positive_delete_by_id(self):
        """Check if Subnet can be deleted

        :id: ad269df8-4bb2-46a5-9c82-010a80087408

        :expectedresults: Subnet is deleted

        :CaseImportance: Critical
        """
        for name in valid_data_list():
            with self.subTest(name):
                subnet = make_subnet({'name': name})
                Subnet.delete({'id': subnet['id']})
                with self.assertRaises(CLIReturnCodeError):
                    Subnet.info({'id': subnet['id']})
Ejemplo n.º 7
0
    def test_positive_delete_1(self, test_name):
        """@Test: Check if Subnet can be deleted

        @Feature: Subnet - Delete

        @Assert: Subnet is deleted

        """

        try:
            new_subnet = make_subnet({'name': test_name})
        except CLIFactoryError as err:
            self.fail(err)

        # Fetch it
        result = Subnet.info({'id': new_subnet['id']})
        self.assertEqual(result.return_code, 0, "Subnet was not found")
        self.assertEqual(len(result.stderr), 0, "No error was expected")

        # Delete it
        result = Subnet.delete({'id': result.stdout['id']})
        self.assertEqual(result.return_code, 0, "Subnet was not deleted")
        self.assertEqual(len(result.stderr), 0, "No error was expected")

        # Fetch it again
        result = Subnet.info({'id': new_subnet['id']})
        self.assertGreater(result.return_code, 0, "Subnet should not be found")
        self.assertGreater(len(result.stderr), 0, "No error was expected")
Ejemplo n.º 8
0
    def test_positive_delete_1(self, test_name):
        """
        @Test: Check if Subnet can be deleted
        @Feature: Subnet - Delete
        @Assert: Subnet is deleted
        """

        new_subnet = make_subnet({'name': test_name['name']})

        # Fetch it
        result = Subnet.info({'id': new_subnet['id']})
        self.assertEqual(
            result.return_code,
            0,
            "Subnet was not found")
        self.assertEqual(
            len(result.stderr), 0, "No error was expected")

        # Delete it
        result = Subnet.delete({'id': result.stdout['id']})
        self.assertEqual(
            result.return_code,
            0,
            "Subnet was not deleted")
        self.assertEqual(
            len(result.stderr), 0, "No error was expected")

        # Fetch it again
        result = Subnet.info({'id': new_subnet['id']})
        self.assertGreater(
            result.return_code,
            0,
            "Subnet should not be found")
        self.assertGreater(
            len(result.stderr), 0, "No error was expected")
Ejemplo n.º 9
0
 def test_delete(self):
     """
     @Feature: Subnet - Delete
     @Test: Check if Subnet can be deleted
     @Assert: Subnet is deleted
     """
     name = generate_name()
     options = {}
     options['name'] = name
     result = Subnet.create_minimal(name)
     self.assertTrue(result.return_code == 0,
                     "Subnet create - exit code %d" %
                     result.return_code)
     result = Subnet.delete(options)
     self.assertTrue(result.return_code == 0,
                     "Subnet delete - exit code %d" %
                     result.return_code)
Ejemplo n.º 10
0
    def test_positive_delete_1(self, test_name):
        """@Test: Check if Subnet can be deleted

        @Feature: Subnet - Delete

        @Assert: Subnet is deleted

        """
        try:
            subnet = make_subnet({'name': test_name})
        except CLIFactoryError as err:
            self.fail(err)

        # Delete it
        result = Subnet.delete({'id': subnet['id']})
        self.assertEqual(result.return_code, 0)
        self.assertEqual(len(result.stderr), 0)

        # Fetch it again
        result = Subnet.info({'id': subnet['id']})
        self.assertGreater(result.return_code, 0)
        self.assertGreater(len(result.stderr), 0)
Ejemplo n.º 11
0
 def _cleanup():
     if Subnet.exists(search=('name', subnet['name'])):
         Subnet.delete(options={'id': subnet['id']})
Ejemplo n.º 12
0
    def test_positive_CRUD(self):
        """Create, update and delete subnet

        :id: d74a52a7-df56-44ef-89a3-081c14e81e43

        :expectedresults: Subnet is created, updated and deleted

        :CaseImportance: Critical
        """
        name = valid_data_list()[0]
        pool = sorted(valid_addr_pools()[0])
        mask = '255.255.255.0'
        # generate pool range from network address
        network = gen_ipaddr()
        from_ip = re.sub(r'\d+$', str(pool[0]), network)
        to_ip = re.sub(r'\d+$', str(pool[1]), network)
        domains_amount = random.randint(3, 5)
        domains = [make_domain() for _ in range(domains_amount)]
        gateway = gen_ipaddr(ip3=True)
        ipam_type = SUBNET_IPAM_TYPES['dhcp']
        subnet = make_subnet(
            {
                'name': name,
                'from': from_ip,
                'mask': mask,
                'network': network,
                'to': to_ip,
                'domain-ids': [domain['id'] for domain in domains],
                'gateway': gateway,
                'ipam': ipam_type,
            }
        )
        # Check if Subnet can be listed
        subnets_ids = [subnet_['id'] for subnet_ in Subnet.list()]
        self.assertIn(subnet['id'], subnets_ids)
        self.assertEqual(subnet['name'], name)
        self.assertEqual(subnet['start-of-ip-range'], from_ip)
        self.assertEqual(subnet['end-of-ip-range'], to_ip)
        self.assertEqual(len(subnet['domains']), domains_amount)
        for domain in domains:
            self.assertIn(domain['name'], subnet['domains'])
        self.assertIn(gateway, subnet['gateway-addr'])
        self.assertIn(ipam_type, subnet['ipam'])

        # update subnet
        new_name = valid_data_list()[0]
        pool = sorted(valid_addr_pools()[0])
        # generate pool range from network address
        new_network = gen_ipaddr()
        new_mask = '255.255.192.0'
        ip_from = re.sub(r'\d+$', str(pool[0]), new_network)
        ip_to = re.sub(r'\d+$', str(pool[1]), new_network)
        ipam_type = SUBNET_IPAM_TYPES['internal']
        Subnet.update(
            {
                'new-name': new_name,
                'from': ip_from,
                'id': subnet['id'],
                'to': ip_to,
                'mask': new_mask,
                'network': new_network,
                'ipam': ipam_type,
                'domain-ids': "",  # delete domains needed for subnet delete
            }
        )
        subnet = Subnet.info({'id': subnet['id']})
        self.assertEqual(subnet['name'], new_name)
        self.assertEqual(subnet['start-of-ip-range'], ip_from)
        self.assertEqual(subnet['end-of-ip-range'], ip_to)
        self.assertEqual(subnet['network-addr'], new_network)
        self.assertEqual(subnet['network-mask'], new_mask)
        self.assertIn(ipam_type, subnet['ipam'])

        # delete subnet
        Subnet.delete({'id': subnet['id']})
        with self.assertRaises(CLIReturnCodeError):
            Subnet.info({'id': subnet['id']})