Exemple #1
0
def parse_network_vlan_range(network_vlan_range):
    """Interpret a string as network[:vlan_begin:vlan_end]."""
    entry = network_vlan_range.strip()
    if ':' in entry:
        if entry.count(':') != 2:
            raise n_exc.NetworkVlanRangeError(
                vlan_range=entry,
                error=_("Need exactly two values for VLAN range"))
        network, vlan_min, vlan_max = entry.split(':')
        if not network:
            raise n_exc.PhysicalNetworkNameError()

        try:
            vlan_min = int(vlan_min)
        except ValueError:
            raise_invalid_tag(vlan_min, entry)

        try:
            vlan_max = int(vlan_max)
        except ValueError:
            raise_invalid_tag(vlan_max, entry)

        vlan_range = (vlan_min, vlan_max)
        verify_vlan_range(vlan_range)
        return network, vlan_range
    else:
        return entry, None
Exemple #2
0
 def test_create_floatingip_with_failure_in_creating(
         self, mock_assoc, mock_create):
     floatingip = {'floatingip': {'port_id': 'fake_port_id'}}
     mock_create.side_effect = exceptions.PhysicalNetworkNameError()
     mock_assoc.return_value = None
     self.assertRaises(exceptions.PhysicalNetworkNameError,
                       self._driver.create_floatingip, self.context,
                       floatingip)
Exemple #3
0
 def test_delete_floatingip_failure(self, mock_get, mock_delete):
     fake_id = 'fake_id'
     mock_get.return_value = {'floating_ip_address': '192.169.10.1'}
     mock_delete.side_effect = exceptions.PhysicalNetworkNameError()
     self.assertRaises(exceptions.PhysicalNetworkNameError,
                       self._driver.delete_floatingip, self.context,
                       fake_id)
     self.assertTrue(mock_get.called)
     mock_get.assert_called_once_with(self.context, fake_id)
Exemple #4
0
 def test_delete_router_failure(self, mock_get, mock_create, mock_delete):
     mock_get.return_value = {
         'name': 'test_router',
         'project_id': 'fake_project'
     }
     mock_delete.side_effect = exceptions.PhysicalNetworkNameError()
     response = self._create_router(mock_create)
     self.assertRaises(exceptions.PhysicalNetworkNameError,
                       self._driver.delete_router, self.context,
                       response['id'])
Exemple #5
0
def parse_network_vlan_range(network_vlan_range):
    """Interpret a string as network[:vlan_begin:vlan_end]."""
    entry = network_vlan_range.strip()
    if ':' in entry:
        try:
            network, vlan_min, vlan_max = entry.split(':')
            vlan_range = (int(vlan_min), int(vlan_max))
        except ValueError as ex:
            raise n_exc.NetworkVlanRangeError(vlan_range=entry, error=ex)
        if not network:
            raise n_exc.PhysicalNetworkNameError()
        verify_vlan_range(vlan_range)
        return network, vlan_range
    else:
        return entry, None
Exemple #6
0
    def test_create_floatingip_exception_allocip(
            self, mock_allocateip, mock_l3_createip, mock_delip, mock_relip):

        floatingip = {'floatingip': {'port_id': True}}
        res = '192.168.10.1'
        mock_l3_createip.return_value = res
        mock_delip.return_value = None
        mock_relip.return_value = None

        # Case 4: allocate_floatingip returns an excpetion
        mock_allocateip.side_effect = exceptions.PhysicalNetworkNameError()
        self.assertRaises(exceptions.PhysicalNetworkNameError,
                          self._driver.create_floatingip,
                          self.context, floatingip)
        self.assertFalse(mock_delip.called)
        self.assertFalse(mock_relip.called)
Exemple #7
0
    def test_create_floatingip_exception_creatip(
            self, mock_allocateip, mock_l3_createip, mock_delip, mock_relip):

        floatingip = {'floatingip': {'port_id': False}}
        public_ip_allocated = '192.168.20.2'
        mock_allocateip.return_value = public_ip_allocated
        mock_delip.return_value = None
        mock_relip.return_value = None

        # Case 3: create_floatingip returns an exception, cleanup_floatingip is
        # called
        mock_l3_createip.side_effect = exceptions.PhysicalNetworkNameError()
        self.assertRaises(exceptions.PhysicalNetworkNameError,
                          self._driver.create_floatingip,
                          self.context, floatingip)
        mock_relip.assert_called_once_with(
            self._driver.gce_svc, self._driver.gce_project,
            self._driver.gce_region, public_ip_allocated)
        mock_delip.assert_called_once_with(
            self._driver.gce_svc, self._driver.gce_project,
            self._driver.gce_region, public_ip_allocated)
Exemple #8
0
 def test_create_router_failure(self, mock_create):
     mock_create.side_effect = exceptions.PhysicalNetworkNameError()
     router = {'router': {'name': 'fake_name'}}
     self.assertRaises(exceptions.PhysicalNetworkNameError,
                       self._driver.create_router, self.context, router)
Exemple #9
0
 def test_delete_router_failure(self, mock_create, mock_delete):
     mock_delete.side_effect = exceptions.PhysicalNetworkNameError()
     response = self._create_router(mock_create)
     self.assertRaises(exceptions.PhysicalNetworkNameError,
                       self._driver.delete_router, self.context,
                       response['id'])